可選鏈操作符?

2021-10-02 07:01:37 字數 407 閱讀 5755

可選鏈操作符?.能夠去讀取乙個被連線物件的深層次的屬性的值而無需明確校驗鏈條上每乙個引用的有效性。?.運算子功能類似於.運算子,不同之處在於如果鏈條上的乙個引用是nullish (null 或 undefined),.操作符會引起乙個錯誤,?.操作符取而代之的是會按照短路計算的方式返回乙個undefined。當?.操作符用於函式呼叫時,如果該函式不存在也將會返回undefined。

當訪問鏈條上可能存在的屬性卻不存在時,?.操作符將會使表示式更短和更簡單。當不能保證哪些屬性是必需的時,?.操作符對於探索乙個物件的內容是很有幫助的。

obj?.prop

obj?.[expr]

arr?.[index]

func?.(args)

c語言操作符 位操作符 移位操作符

1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...

linq操作符 限定操作符

限定操作符運算返回乙個boolean值,該值指示序列中是否有一些元素滿足條件或者是否所有元素都滿足條件。一 all操作符 all方法用來確定是否序列中的所有元素都滿足條件。看下面的例子 1 using system 2using system.collections.generic 3using s...

前置操作符和後置操作符

操作符可以被過載 全域性函式和成員函式均可以進行過載 過載前置 操作符不需要額外的引數 過載後置 操作符需要乙個int型別的佔位引數 來看乙個例子 include include using namespace std class test intvalue test operator test o...