小編給大家分享一下JavaScript的空值合并運(yùn)算符是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括鳳岡網(wǎng)站建設(shè)、鳳岡網(wǎng)站制作、鳳岡網(wǎng)頁(yè)制作以及鳳岡網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,鳳岡網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到鳳岡省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
今年ECMAScript 2020(ES2020)將發(fā)布!自 2015 年 ECMAScript 2015(ES6)發(fā)布以來(lái),我們每年都對(duì) JavaScript 語(yǔ)言進(jìn)行更新。
目錄
||
)在ES2020中,我們獲得了在其他語(yǔ)言中( 如 C# 和 PHP)早已可用的功能:空值合并運(yùn)算符。我一直喜歡這個(gè)名字,因?yàn)槊慨?dāng)我說(shuō)這個(gè)名字時(shí),都會(huì)覺(jué)得自己很聰明。
空值合并運(yùn)算符將會(huì)遍歷列表,并返回第一個(gè)不是 null 或 undefined 的值。
重要的是要注意,空值合并運(yùn)算符僅查找 null
或 null
值??罩岛喜⑦\(yùn)算符接受虛值(Falsy values)。
讓我們看一些例子。請(qǐng)記住,JavaScript 的空值合并運(yùn)算符將遵循 ??
鏈,直到找到非空或未定義的對(duì)象。如果找到 false
,它將返回該值。
null ?? 'hi' // 'hi' undefined ?? 'hey' // 'hey' false ?? 'hola' // false 0 ?? 'bonjour' // 0 'first' ?? 'second' // first
在下面的例子中,我們?cè)谧兞恐写鎯?chǔ)了一些值:
let person // <-- person is undefined here person ?? { name: 'chris' } // { name: 'chris' } const isActive = false isActive ?? true // false
鏈接 JavaScript 的空值合并運(yùn)算符
JavaScript 的空值合并運(yùn)算符的妙處在于,我們可以根據(jù)需要將其進(jìn)行多次鏈接。
null ?? undefined ?? false ?? 'hello' // false null ?? '' ?? 'hello' // ''
可以在從外部來(lái)源獲取數(shù)據(jù)時(shí)使用。比如我們想從多個(gè)地方抓取博客的文章。然后可以確定哪個(gè)文章將會(huì)成為我們的精選帖子:
// 簡(jiǎn)化代碼。 使用 fetch requires 需要比這更多的代碼 const firstBlogPost = await fetch('...') const secondBlogPost = await fetch('...') const defaultBlogPost = { title: 'Default Featured Post' } const featuredBlogPost = firstBlogPost ?? secondBlogPost ?? defaultBlogPost
如果不確定某些值是否存在,上面是設(shè)置默認(rèn)值的好方法。
||
)如果要消除虛值,可以用 邏輯或運(yùn)算符 (||
)。
本質(zhì)上,它與空合并運(yùn)算符的作用相同,只是它消除了虛值。
null
,undefined
null
,undefined
,false
false ?? 'hello' // false false || 'hello' // 'hola'
如果你不想用要虛值,可以使用 ||
。如果只想檢查是否為 null
或 undefined
,就用 ??
。
在撰寫本文時(shí),最新版本的 Chrome、Firefox、Edge 和 Safari 可以使用空值合并運(yùn)算符。
以上是“JavaScript的空值合并運(yùn)算符是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!