【发布时间】:2015-04-08 02:16:14
【问题描述】:
parseInt(0.000004); //0
parseInt(0.0000004); //4
为什么第一个 parseInt() 返回 0,但如果我增加小数点后的零个数,它会得到 4?
【问题讨论】:
标签: javascript parseint
parseInt(0.000004); //0
parseInt(0.0000004); //4
为什么第一个 parseInt() 返回 0,但如果我增加小数点后的零个数,它会得到 4?
【问题讨论】:
标签: javascript parseint
部分原因是parseInt() 需要一个字符串作为其参数,并首先将其他任何内容转换为字符串。
console.log(0.000004.toString());
// "0.000004"
console.log(0.0000004.toString());
// "4e-7"
而且,parseInt() 不识别电子符号,在后一种情况下,只接受结果字符串中的 "4"。
【讨论】: