toFixed()与数组不兼容

时间:2018-02-26 07:51:08

标签: javascript arrays tofixed

为什么我在执行下面价格数组的console.log时无法使用toFixed(2)?为什么toFixed在这种情况下不起作用?

我收到以下错误:Error: VM1105:8 Uncaught TypeError: prices.toFixed is not a function at <anonymous>:8:20

这是简单的代码:

var prices = [1.23, 48.11, 90.11, 8.50, 9.99, 1.00, 1.10, 67.00];

// your code goes here
prices[0]= 1.99;
prices[2]= 99.99;
prices[6]= 1.95;

console.log(prices.toFixed(2));

当我打印出console.log(价格)时; 我得到以下内容,它缺少实际数组中的小数。为什么这样以及如何补救它?

(8) [1.99, 48.11, 99.99, 8.5, 9.99, 1, 1.95, 67] 

1 个答案:

答案 0 :(得分:3)

Number#toFixedNumber的方法,而不是Array的方法。您需要映射所有值并在其上应用toFixed

var prices = [1.23, 48.11, 90.11, 8.50, 9.99, 1.00, 1.10, 67.00];

prices[0]= 1.99;
prices[2]= 99.99;
prices[6]= 1.95;

console.log(prices.map(v => v.toFixed(2)));