一般存在四種情況,JavaScript會對變量的數(shù)據(jù)類型進行轉(zhuǎn)換。
目錄
* if中的條件會被自動轉(zhuǎn)為Boolean類型 * 會被轉(zhuǎn)為false的數(shù)據(jù) * 會被轉(zhuǎn)為true的數(shù)據(jù)* 參與+運算都會被隱式的轉(zhuǎn)為字符串 * 會被轉(zhuǎn)為空字符串的數(shù)據(jù) * 會被轉(zhuǎn)為字符串的數(shù)據(jù) * 會被轉(zhuǎn)為數(shù)據(jù)類型標記的數(shù)據(jù)* 參與*運算都會被隱式的轉(zhuǎn)為數(shù)字 * 會被轉(zhuǎn)為0的數(shù)據(jù) * 會被轉(zhuǎn)為1的數(shù)據(jù) * 會被轉(zhuǎn)為NaN的數(shù)據(jù)* == 運算符 * 為true的時候 * 為false的時候
if中的條件會被自動轉(zhuǎn)為Boolean類型
會被轉(zhuǎn)為false的數(shù)據(jù)
if(false) console.log(2333)if('') console.log(2333)if(null) console.log(2333)if(undefined) console.log(2333)if(NaN) console.log(2333)
會被轉(zhuǎn)為true的數(shù)據(jù)
if(true) console.log(2333) // 2333if('test') console.log(2333) // 2333if([]) console.log(2333) // 2333if({}) console.log(2333) // 2333
參與+運算都會被隱式的轉(zhuǎn)為字符串
會被轉(zhuǎn)為空字符串的數(shù)據(jù)
'str-' + '' // str-'str-' + []
會被轉(zhuǎn)為字符串的數(shù)據(jù)
'str-' + '1' // "str-1"'str-' + 1 // "str-1"'str-' + false // "str-false"'str-' + true // "str-true"'str-' + null // "str-null"'str-' + undefined // "str-undefined"'str-' + NaN // "str-NaN"
會被轉(zhuǎn)為數(shù)據(jù)類型標記的數(shù)據(jù)
'str-' + {} // "str-[object Object]"'str-' + {a:1} // "str-[object Object]"
參與*運算都會被隱式的轉(zhuǎn)為數(shù)字
會被轉(zhuǎn)為0的數(shù)據(jù)
2 * '' // 02 * [] // 02 * false // 0
會被轉(zhuǎn)為1的數(shù)據(jù)
2 * '1' // 22 * [1] // 22 * true // 2
會被轉(zhuǎn)為NaN的數(shù)據(jù)
2 * {} // NaN2 * {a:1} // NaN
== 運算符
為true的時候
0 == false // true0 == '' // true0 == '0' // true0 == [] // true0 == [0] // true1 == true // true1 == '1' // true1 == [1] // true[1] == true // true[] == false // true
為false的時候
0 == {} // false0 == null // false0 == undefined // false0 == NaN // false1 == {} // false1 == null // false1 == undefined // false1 == NaN // false[] == [] // false[1] == [1] // false[1] == {} // false[1] == {a:1} // false[1] == false // false[1] == null // false[1] == undefined // false[1] == NaN // false{} == {} // false{a:1} == {a:1} // false
注:空數(shù)組[],在+運算符下是轉(zhuǎn)為空字符串'',在*運算符下是轉(zhuǎn)為數(shù)字0。但在if語句中,則轉(zhuǎn)為true。
以上這篇對存在JavaScript隱式類型轉(zhuǎn)換的四種情況的總結(jié)(必看篇)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持武林網(wǎng)。
新聞熱點
疑難解答