这是我的页面:http: //dl.dropboxusercontent.com/s/3kc058darzus1uu/pythagoras_questions.html
它应该是我正在辅导的一些学生的修订版网站,但是我在修复一个数字到2 dp时遇到了一些麻烦,我不知道为什么.我写过99到107行:
function answers() {
c = Math.sqrt(a*a+b*b)
console.log(c)
Math.round(c*100)/100
console.log(c)
var el = document.getElementById("c")
el.innerHTML="$"+c+"$"
MathJax.Hub.Queue(["Typeset", MathJax.Hub, el])
}
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它会跳过Math.round()函数.以下是控制台的示例输出:
46.32493928760188
46.32493928760188
Run Code Online (Sandbox Code Playgroud)
我只是不明白为什么它没有四舍五入,我做错了什么?奇怪的打字
Math.round(c*100)/100
Run Code Online (Sandbox Code Playgroud)
直接进入控制台给出:46.32.
截图:

您必须再次将结果(返回值)分配给Math.round(c * 100) / 100变量c.
并且总是使用分号来分隔JavaScript语句,这样当两个语句出现在同一行时就不会出错(fe缩小js时).
function answers() {
var c = Math.sqrt(a * a + b * b);
c = Math.round(c * 100) / 100;
var el = document.getElementById("c");
el.innerHTML = "$" + c + "$";
MathJax.Hub.Queue(["Typeset", MathJax.Hub, el]);
}
Run Code Online (Sandbox Code Playgroud)