偶然之間用到這兩個方法
然后在數字轉換成字符串的時候,並沒有感覺這兩個方法有什么區別,如下:
var e=123 e.toString() "123" e.toLocaleString() "123"
是吧,並沒有什么區別,上面的e是一個三位數的數字,那么要是四位數以上呢
var a=1234 a.toString() "1234" a.toLocaleString() "1,234"
當數字是四位及以上時,toLocaleString()會讓數字三位三位一分隔,像我們有時候數字也會三位一個分號
再繼續看數組轉成字符串分別用這兩個方法有什么區別呢,看看,代碼如下
var aa=[1,2,3] aa.toLocaleString() "1,2,3" aa.toString() "1,2,3"
也並沒有區別哦
然后再上網看看發現好像在轉換時間格式上有區別,那么看看吧,代碼如下:
var sd=new Date() sd Wed Feb 15 2017 11:21:31 GMT+0800 (CST) sd.toLocaleString() "2017/2/15 上午11:21:31" sd.toString() "Wed Feb 15 2017 11:21:31 GMT+0800 (CST)"
恩 這樣一目了然看到了差別
這樣總結以上就是toString()和toLocaleString()兩點區別:
1.當數字是四位數及以上時,有區別,區別看以上代碼
2.當目標是標准時間格式時,用以上兩種方法是有區別的,區別看以上
還有什么別的方面的區別我就不知道了,歡迎補充