为什么Number#toLocaleString()在webkit控制台和节点控制台中都没有按预期工作?

时间:2012-02-05 17:44:35

标签: javascript

var a = 1234567;

console.log(a.toLocaleString())

#=> '1234567'

为什么在此测试中toLocaleString()和toString之间没有区别?

2 个答案:

答案 0 :(得分:0)

我自己只是在寻找答案。简短的回答是,Node.js构建版本没有默认包含的Number.toLocaleString所需的内部化库,因为它会大大增加二进制文件的大小。

如果您确实需要,可以从包含库的源构建Node。如果您有兴趣,This other answer会提供更多详细信息。

答案 1 :(得分:-1)

toLocaleString只是toString的文化感知版本。如果您发现它们之间没有区别,那么您调用它们的对象在您的本地文化和不变文化中具有相同的表示。这对方法将在逗号用于浮点数而不是点的国家/地区提供不同的结果。

1.23.toLocaleString(); // "1,23"
1.23.toString(); // "1.23"