最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

typescript使用 ?. ?? ??= 運(yùn)算符的方法步驟

 更新時(shí)間:2024年01月04日 16:14:23   作者:?? 3  
本文主要介紹了typescript使用 ?. ?? ??= 運(yùn)算符的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

可選鏈運(yùn)算符 (?.)

用于訪問可能為 null 或 undefined 的屬性或方法,以避免出現(xiàn)異常錯(cuò)誤。如果使用 . 運(yùn)算符來訪問一個(gè)可能為 null 或 undefined 的值,會(huì)導(dǎo)致運(yùn)行時(shí)錯(cuò)誤。而使用 ?. 運(yùn)算符,如果該值為 null 或 undefined,則表達(dá)式會(huì)短路,返回 undefined,而不會(huì)拋出異常。
例如:

let obj = { foo: { bar: 42 } };
let value = obj?.foo?.bar; // 如果 obj 或 obj.foo 或 obj.foo.bar 為 null 或 undefined,value 將為 undefined,否則為 42

空值合并運(yùn)算符 (??)

用于給定一個(gè)默認(rèn)值,當(dāng)一個(gè)表達(dá)式的值為 null 或 undefined 時(shí),返回默認(rèn)值。如果一個(gè)變量或表達(dá)式的值為 null 或 undefined,使用 ?? 運(yùn)算符可以提供一個(gè)備選值。
例如:

let x = null;
let y = x ?? 5; // 如果 x 為 null 或 undefined,y 將為 5,否則為 x 的值

空值合并賦值運(yùn)算符 (??=)

用于將默認(rèn)值賦給一個(gè)變量,當(dāng)該變量的值為 null 或 undefined 時(shí)。如果一個(gè)變量的值為 null 或 undefined,可以使用 ??= 運(yùn)算符將一個(gè)默認(rèn)值賦給該變量。
例如:

let x = null;
x ??= 5; // 如果 x 為 null 或 undefined,將把 5 賦給 x

??和 ||比較相似

?? 和 || 區(qū)別

假值:false、0、空字符串、null、undefined 等
?? 判斷左側(cè)操作數(shù)為null或undefined時(shí),返回右側(cè)操作數(shù)
|| 判斷左側(cè)操作數(shù)為’假值'時(shí),返回右側(cè)操作數(shù)

let a:any;
let b = '1111';
let c = null;
let d:any = 0;
let e;
e ??= a?.b ?? c ?? d?.a ?? b;

a?.b:這是可選鏈運(yùn)算符 ?. 的使用,它嘗試訪問變量 a 的屬性 b。如果 a 為 null 或 undefined,則表達(dá)式返回 undefined。
a?.b ?? c:這是空值合并運(yùn)算符 ?? 的使用,它判斷左側(cè)操作數(shù) a?.b 是否為 null 或 undefined。如果是,則返回右側(cè)操作數(shù) c 的值。否則,返回左側(cè)操作數(shù) a?.b 的值。
a?.b ?? c ?? d?.a:繼續(xù)使用空值合并運(yùn)算符 ??,判斷前一個(gè)表達(dá)式的結(jié)果 a?.b ?? c 是否為 null 或 undefined。如果是,則返回右側(cè)操作數(shù) d?.a 的值。否則,返回前一個(gè)表達(dá)式的結(jié)果。
a?.b ?? c ?? d?.a ?? b:再次使用空值合并運(yùn)算符 ??,判斷前一個(gè)表達(dá)式的結(jié)果 a?.b ?? c ?? d?.a 是否為 null 或 undefined。如果是,則返回右側(cè)操作數(shù) b 的值。否則,返回前一個(gè)表達(dá)式的結(jié)果。
根據(jù)上述表達(dá)式的邏輯,以下是對(duì)應(yīng)的執(zhí)行過程:

a 的值為 undefined。
a?.b 的結(jié)果為 undefined。
a?.b ?? c 的結(jié)果為 null,因?yàn)樽髠?cè)操作數(shù)為 undefined,右側(cè)操作數(shù)為 null。
a?.b ?? c ?? d?.a 的結(jié)果為 0,因?yàn)樽髠?cè)操作數(shù)為 null,右側(cè)操作數(shù)為 d?.a,而 d 的值為 0。
a?.b ?? c ?? d?.a ?? b 的結(jié)果為 '1111',因?yàn)樽髠?cè)操作數(shù)為 0,右側(cè)操作數(shù)為 '1111'。
最終,變量 e 的值被賦為 '1111'。

到此這篇關(guān)于typescript使用 ?. ?? ??= 運(yùn)算符的方法步驟的文章就介紹到這了,更多相關(guān)typescript運(yùn)算符內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • js模塊加載方式淺析

    js模塊加載方式淺析

    這篇文章主要為大家詳細(xì)介紹了js模塊加載方式的初級(jí)學(xué)習(xí)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • JavaScript?數(shù)組基本操作全解

    JavaScript?數(shù)組基本操作全解

    今天這篇文章就是來和大家詳細(xì)聊聊JavaScript中數(shù)組的基本操作,很多語言都是在數(shù)組這有個(gè)分水嶺。聽懂了接下來就很容易,聽不懂就難辦了,大家要認(rèn)真看喲。希望大家讀完有所收獲,那我辛苦碼字也就值了
    2022-02-02
  • 完美實(shí)現(xiàn)js焦點(diǎn)輪播效果(一)

    完美實(shí)現(xiàn)js焦點(diǎn)輪播效果(一)

    這篇文章主要為大家詳細(xì)介紹了完美實(shí)現(xiàn)js焦點(diǎn)輪播效果的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JavaScript 程序編碼規(guī)范

    JavaScript 程序編碼規(guī)范

    這是一套適用于JavaScript程序的編碼規(guī)范。它基于Sun的Java程序編碼規(guī)范。但進(jìn)行了大幅度的修改, 因?yàn)镴avaScript不是Java。
    2010-11-11
  • JS圖片定時(shí)翻滾效果實(shí)現(xiàn)方法

    JS圖片定時(shí)翻滾效果實(shí)現(xiàn)方法

    這篇文章主要介紹了JS圖片定時(shí)翻滾效果實(shí)現(xiàn)方法,涉及javascript結(jié)合時(shí)間函數(shù)實(shí)現(xiàn)頁面元素動(dòng)態(tài)切換的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-06-06
  • uni-app實(shí)現(xiàn)點(diǎn)贊評(píng)論功能

    uni-app實(shí)現(xiàn)點(diǎn)贊評(píng)論功能

    這篇文章主要介紹了uni-app實(shí)現(xiàn)點(diǎn)贊評(píng)論功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • JS實(shí)現(xiàn)下拉菜單賦值到文本框的方法

    JS實(shí)現(xiàn)下拉菜單賦值到文本框的方法

    這篇文章主要介紹了JS下拉菜單賦值到文本框的方法,涉及javascript頁面元素的選擇與賦值的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • js動(dòng)態(tài)刪除div元素基本思路及實(shí)現(xiàn)代碼

    js動(dòng)態(tài)刪除div元素基本思路及實(shí)現(xiàn)代碼

    這篇文章主要介紹了js動(dòng)態(tài)刪除div元素基本思路及實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2014-05-05
  • JavaScript判斷是否為數(shù)組的3種方法及效率比較

    JavaScript判斷是否為數(shù)組的3種方法及效率比較

    這篇文章主要介紹了JavaScript判斷是否為數(shù)組的3種方法及效率比較,本文直接給出運(yùn)行效果和實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-04-04
  • JS實(shí)現(xiàn)的Unicode編碼轉(zhuǎn)換操作示例

    JS實(shí)現(xiàn)的Unicode編碼轉(zhuǎn)換操作示例

    這篇文章主要介紹了JS實(shí)現(xiàn)的Unicode編碼轉(zhuǎn)換操作,結(jié)合完整實(shí)例形式分析了javascript實(shí)現(xiàn)Unicode編碼轉(zhuǎn)換的具體操作技巧,需要的朋友可以參考下
    2017-04-04

最新評(píng)論

宿松县| 西和县| 乐安县| 阿勒泰市| 宁津县| 灵宝市| 商都县| 客服| 蛟河市| 东至县| 毕节市| 白沙| 佛山市| 鹰潭市| 合肥市| 井冈山市| 湘潭县| 瓦房店市| 平和县| 七台河市| 新乡市| 海盐县| 九江市| 新津县| 辽中县| 民勤县| 四会市| 太湖县| 武胜县| 紫阳县| 东丰县| 玉田县| 株洲市| 内丘县| 金华市| 阿瓦提县| 集贤县| 盐亭县| 山阳县| 江华| 甘谷县|