欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

typescript使用 ?. ?? ??= 運算符的方法步驟

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

可選鏈運算符 (?.)

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

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

空值合并運算符 (??)

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

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

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

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

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

??和 ||比較相似

?? 和 || 區(qū)別

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

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

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

相關(guān)文章

最新評論