小編給大家分享一下JavaScript什么時(shí)候會(huì)對(duì)變量的數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),隆回企業(yè)網(wǎng)站建設(shè),隆回品牌網(wǎng)站建設(shè),網(wǎng)站定制,隆回網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,隆回網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
一般存在四種情況,JavaScript會(huì)對(duì)變量的數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換。
目錄
* if中的條件會(huì)被自動(dòng)轉(zhuǎn)為Boolean類型 * 會(huì)被轉(zhuǎn)為false的數(shù)據(jù) * 會(huì)被轉(zhuǎn)為true的數(shù)據(jù) * 參與+運(yùn)算都會(huì)被隱式的轉(zhuǎn)為字符串 * 會(huì)被轉(zhuǎn)為空字符串的數(shù)據(jù) * 會(huì)被轉(zhuǎn)為字符串的數(shù)據(jù) * 會(huì)被轉(zhuǎn)為數(shù)據(jù)類型標(biāo)記的數(shù)據(jù) * 參與*運(yùn)算都會(huì)被隱式的轉(zhuǎn)為數(shù)字 * 會(huì)被轉(zhuǎn)為0的數(shù)據(jù) * 會(huì)被轉(zhuǎn)為1的數(shù)據(jù) * 會(huì)被轉(zhuǎn)為NaN的數(shù)據(jù) * == 運(yùn)算符 * 為true的時(shí)候 * 為false的時(shí)候
if中的條件會(huì)被自動(dòng)轉(zhuǎn)為Boolean類型
會(huì)被轉(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)
會(huì)被轉(zhuǎn)為true的數(shù)據(jù)
if(true) console.log(2333) // 2333 if('test') console.log(2333) // 2333 if([]) console.log(2333) // 2333 if({}) console.log(2333) // 2333
參與+運(yùn)算都會(huì)被隱式的轉(zhuǎn)為字符串
會(huì)被轉(zhuǎn)為空字符串的數(shù)據(jù)
'str-' + '' // str- 'str-' + []
會(huì)被轉(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"
會(huì)被轉(zhuǎn)為數(shù)據(jù)類型標(biāo)記的數(shù)據(jù)
'str-' + {} // "str-[object Object]" 'str-' + {a:1} // "str-[object Object]"
參與*運(yùn)算都會(huì)被隱式的轉(zhuǎn)為數(shù)字
會(huì)被轉(zhuǎn)為0的數(shù)據(jù)
2 * '' // 0 2 * [] // 0 2 * false // 0
會(huì)被轉(zhuǎn)為1的數(shù)據(jù)
2 * '1' // 2 2 * [1] // 2 2 * true // 2
會(huì)被轉(zhuǎn)為NaN的數(shù)據(jù)
2 * {} // NaN 2 * {a:1} // NaN
== 運(yùn)算符
為true的時(shí)候
0 == false // true 0 == '' // true 0 == '0' // true 0 == [] // true 0 == [0] // true 1 == true // true 1 == '1' // true 1 == [1] // true [1] == true // true [] == false // true
為false的時(shí)候
0 == {} // false 0 == null // false 0 == undefined // false 0 == NaN // false 1 == {} // false 1 == null // false 1 == undefined // false 1 == 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ù)組[],在+運(yùn)算符下是轉(zhuǎn)為空字符串'',在*運(yùn)算符下是轉(zhuǎn)為數(shù)字0。但在if語句中,則轉(zhuǎn)為true。
以上是“JavaScript什么時(shí)候會(huì)對(duì)變量的數(shù)據(jù)類型進(jìn)行轉(zhuǎn)換”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!