js

2017-05-11  本文已影响12人  千罹

问题1 「999..toLocaleString() 中的两个点」

toLocaleString() 是将前面的「数字/数组」转换为本地字符串,
数字:9999 => '9,999' 数组:[1,2,3] => '1,2,3'

解:

999. 意味着这是一个数字,强等价于 (999),强等价于 999.0 或者 弱等价于 [999]

强等价:===
弱等价:==

所以,以下写法都正确:

[999].toLocaleString()  // '999'
(999).toLocaleString()  // '999'
999.0.toLocaleString()  // '999'
999..toLocaleString()   // '999'
问题来由:

查找 数字格式化 用逗号隔开
查找 千位符
发现 一个简洁的写法 9999..toLocaleString() => '9,999'
试运行 9999.toLocaleString()
报错
改运行 9999..toLocaleString()
成功
查找相关资料,运行测试
结论

上一篇 下一篇

猜你喜欢

热点阅读