顧名思義:
valueOf 返回其原始值
toString 轉爲字符串
toLocaleString 轉爲字符串,爲地區特定的格式
(幾個示例)
1. Number
(1234567).valueOf() // 1234567 數字原始值
(1234567).toString() // "1234567"
(1234567).toLocaleString() // "1,234,567" 建議使用
2. Number Array
[1234567,123,987654321].valueOf() // [1234567, 123, 987654321] 數組原始值
[1234567,123,987654321].toString() // "1234567,123,987654321"
[1234567,123,987654321].toLocaleString() // "1,234,567,123,987,654,321" 會出問題,不建議使用
3. Date
new Date().valueOf() // 1620897985995
new Date().toString() // "Thu May 13 2021 16:37:41 GMT+0800 (中國標準時間)"
new Date().toLocaleString() // "2021/5/13 下午4:41:04" 建議使用
4. Boolean
new Boolean().valueOf() // false 原始值 默認false
!new Boolean().valueOf() // true
!new Boolean() // false
注意上面:默認false,那!false 應該是 true啊 其實是 false
new Boolean().toString() // "false"
new Boolean().toLocaleString() // "false"
其他:Math.PI.valueOf() // 3.141592653589793
注意:
toString()可以將數據都轉爲字符串,但是null和undefined不可以轉換,會報錯。可以 String(null) // null String(undefined) // undefined
toString()括號中可以寫數字,代表進制 toString(2)
toLocaleString() 建議使用場景:大金額分隔,日期轉換,其他場景最好不要使用