Javascript toFixed 不是一个函数
2015-08-11
17441
嗨,问题如下:
我定义:
var total = 0;
function add(a){
total+=a;
var float_num = total.toFixed(2);
return float_num;
}
JS 给我一个错误说 Uncaught TypeError total.toFixed 不是函数
我不明白。我声明的总数不是数字类型?
3个回答
我认为防止错误发生的最简单方法是始终将参数解析为数字:
var total = 0;
function add(a){
total+=a;
var float_num = Number(total).toFixed(2);
return float_num;
}
HakuteiJ
2017-07-12
检查上面的任何代码是否已重新定义 Number 原型上的 toFixed,例如
Number.prototype.toFixed = {};
var total = 0;
function add(a) {
total += a;
var float_num = total.toFixed(2);
return float_num;
}
add(2)
是复制错误的一种方法。
potatopeelings
2015-08-11
这取决于
a
的值。如果
a
恰好是
“string”
,那么您尝试执行的操作是:
"0string".toFixed(2)
这应该会引发错误。
slebetman
2015-08-11