toString()和toLocaleString()的区别
toLocaleString( )返回对象的字符串表示,该字符串与执行环境的地区对应;toString( )返回对象的字符串表示;感觉不太好理解,还是看代码吧
很多种情况下两个方法会返回一样的值
1.
var arr = ['red','yellow','blue'];
console.log(arr.toLocaleString()); //red,yellow,blue
console.log(arr.toString()); //red,yellow,blue
console.log(arr.toString()); //Array[3]
在数组上面没有太大区别
valueOf()返回的是数组本身
toString()方法是把数组转换为字符串,并返回结果,每一项以逗号分割
toLocaleString()方法把数组转换为本地数组,并返回结果。
2.
var e = 123;
console.log(e.toString()); //123
console.log(e.toLocaleString()); //123
如果你在e=1234;呢?返回的结果是不是就不相同了?
console.log(e.toString()) //1234
console.log(e.toLocaleString()) /1,234
当数字是四位及以上时,toLocaleString()会让数字三位三位一分隔
3.
var sj = new Date();
console.log(sj.toString());
//2018/8/3 上午10:10:49
console.log(sj.toLocaleString());
//Fri Aug 03 2018 10:10:49 GMT+0800 (中国标准时间)
一眼就可以看出来两者之间的差别
这样总结以上就是toString()和toLocaleString()两点区别:
2.当数字是四位数及以上时,有区别,区别看以上代码
3.当目标是标准时间格式时,用以上两种方法是有区别的,区别看以上