今天看高程的书(《javascript高级程序设计》),对object类型中 tolocaleString,toString两者的解释有点不理解。书上说:
tolocaleString():返回对象的字符串表示,该字符串与执行环境的地区对应。(这个执行环境的地区对应是啥意思)?
toString(): 返回对象的字符串表示。
看完还是不太好理解,索性用例子来表现下吧,更直观些:
通过上下两图你会发现,数字在超过4位时,tolocaleString 会用逗号隔开后三位,3位数的值两者没什么区别
数组: 两者之间没有变化
日期: 看到日期后,我大概知道tolocaleString 中的 “字符串与执行环境的地区对应”的意思了:
1. tolocaleString 会根据你电脑的本地环境来返回字符串,它和toString()返回的值在不同的本地环境下使用 的符号可能变化。
2. 使用toString()它不会因为本地环境(例如国家,时区)的变化随之改变。
3. 如果需要前端传值给后端的话,一般是时间戳,那这里需要再getTime转化下,如果明确要获取正常展示的时间类型,还是要用tolocaleString。
嗯,关于这两个的区别先写到这,如果后续有遇到不同的场景,再来记录一下。