我正在练习练习并遇到了这个问题。
这个问题问:
“提示输入大于 1 且保留 4 位小数的数字。使用 toFixed() 方法将数字格式化并写入显示的页面,仅显示小数点后 2 位数字。(例如 12.35,而不是 12.3453)
由于此方法非常新,因此在旧浏览器中不起作用。看看你是否可以在不使用 toFixed() 的情况下只显示小数点后 2 位数字。”</p>
我通过这里的档案 Math.round(n*100)/100 找到了困难部分的答案。感谢那。但是当我尝试“简单”的方法时,我什么也得不到。我的工作是在jsFiddle,但简而言之:
var num = prompt("Give me a number greater than one, with 4 decimal places.");
var num2 = prompt("Great! Do one more, please!");
num = Math.round(num*100)/100;
num2 = num2.toFixed(2);
alert(num);
alert(num2);
该练习没有要求第二个数字,但我想在不同的事件中使用这两种方法。当我运行它时,它不会发出任何警报。我知道它挂在 toFixed 语句上,因为当我将其注释掉时,它会按预期提示 num1 的小数点后 2 位和提示的 num2(即 1.2345)。
所以这是我到目前为止所做的:
Mozilla 的开发者页面显示这种格式:n.toFixed(1);// Returns "12345.7": note rounding
似乎正是我在做什么。
我将所有内容复制并粘贴到我的 Sublime 中,确保我在结束 body 标记之前调用了 .js 文件,以确保它不是我不理解的加载问题。
加上各种小调整。
很抱歉一直问这些问题,但是由于我是自学的,我还有其他地方可以去!