中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JavaScript中使用擴展運算符進行空檢查的最佳方法有哪些

發布時間:2022-03-11 11:54:57 來源:億速云 閱讀:241 作者:小新 欄目:編程語言

這篇文章主要介紹JavaScript中使用擴展運算符進行空檢查的最佳方法有哪些,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

進行空檢查的最佳方法

你還記得你寫的第一個空檢查代碼嗎?當 JavaScript 還沒有現在這個完善時,我曾在我的舊代碼中這樣寫:

if (foo !== null && foo !== undefined) { }

后來,我的生命被簡單的 if 拯救!

if (foo) {}

只要條件值 foo 不是下列值,都將為真值“

  • null

  • undefined

  • NaN

  • 空字符串 ("")

  • false

除了簡單的 if 之外,現代 JavaScript 的可選鏈操作符 ?. 與空值合并運算符 ?? 可以使我們的代碼更加簡潔

1.可選鏈操作符

可選鏈操作符是訪問嵌套對象屬性的安全方式。這意味著在訪問一長串對象屬性時,我們不必進行多次空檢查。當嘗試訪問可能不存在的對象屬性時,可選鏈操作符將會使表達式更短、更簡明

以下示例檢查客戶地址的郵政編碼是否為 null :

const client = {
  name: 'Liu Xing',
  address: {
    zipcode: '1234'
  }
}

// 老的取值方式
if (client && client.address && client.address.zipcode) {}
// 更加現代的可選鏈操作符方式
if (client?.address?.zipcode) {}

2.空值合并運算符

空值合并操作符( ?? )是一個邏輯操作符,當左側的操作數為 null 或者 undefined 時,返回其右側操作數,否則返回左側操作數。

const defaultMessage = 'Hello JavaScript 之禪'
const msg = defaultMessage ?? 'Hello Liu Xing';
console.log(msg); // Hello JavaScript 之禪'

如果 defaultMessage 是 null 或者 undefined 則將打印出 Hello Liu Xing

當我們按順序使用它時,它會變得更強大:

console.log(firstName ?? lastName ?? 'anonymous')

在這個例子中,如果 firstName 不是 null/undefined,它將顯示 firstName, 否則,如果 lastName 不是 null/undefined,它將顯示 lastName。 最后,如果它們都為 null/undefined,它將顯示“anonymous”。

以上是“JavaScript中使用擴展運算符進行空檢查的最佳方法有哪些”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

吴忠市| 怀安县| 新河县| 河北区| 田东县| 石景山区| 天全县| 阿鲁科尔沁旗| 姚安县| 蚌埠市| 循化| 虹口区| 衢州市| 清涧县| 新安县| 白水县| 台州市| 北海市| 读书| 长寿区| 锦屏县| 开江县| 乐至县| 阿克陶县| 雷州市| 华坪县| 阳江市| 无极县| 小金县| 巍山| 许昌市| 乌拉特后旗| 云浮市| 黄浦区| 武邑县| 巨鹿县| 无棣县| 民县| 威远县| 井冈山市| 黔东|