在 JavaScript 编程中,我们经常需要检查变量是否为 null 或 undefined,以避免出现运行时错误。在过去,我们通常使用 if 语句或三元运算符来检查变量是否为 null 或 undefined。但是,这种做法往往会使代码变得冗长和难以阅读。幸运的是,ES10 引入了一种新的语法 Optional Chaining,它可以让我们更方便地处理这种情况。
什么是 Optional Chaining
Optional Chaining 是一种新的语法,它可以让我们更方便地访问对象的属性或方法,而不必担心对象本身是否为 null 或 undefined。它使用问号(?)来表示可选的属性或方法。
下面是一个示例:
-- -------------------- ---- ------- ----- ------ - - ----- -------- -------- - ----- ---- ------ ------ ---- - -- ---------------------------------- -- ---- ----- ------------------------------------- -- --------- ---------------------------------------- -- ---------
在这个示例中,我们使用 Optional Chaining 运算符 ?. 来访问 person 对象的 address 属性和 phoneNumber 属性。如果这些属性不存在,表达式的值将为 undefined。
如何使用 Optional Chaining
在实际编程中,我们可以在访问对象的属性或方法时使用 Optional Chaining 运算符。下面是一个示例:
const user = { name: 'Bob', address: null }; const city = user.address?.city;
在这个示例中,我们使用 Optional Chaining 运算符来访问 user 对象的 address 属性的 city 属性。如果 address 属性不存在,表达式的值将为 undefined。
Optional Chaining 的优势
使用 Optional Chaining 的主要优势是让我们的代码更加简洁和易于阅读。在过去,我们通常需要使用 if 语句或三元运算符来检查变量是否为 null 或 undefined,这使得我们的代码变得冗长和难以阅读。使用 Optional Chaining,我们可以更方便地处理这种情况,而不必担心对象本身是否为 null 或 undefined。
注意事项
虽然 Optional Chaining 可以让我们的代码更加简洁和易于阅读,但是在使用时需要注意以下几点:
- Optional Chaining 运算符只能用于访问对象的属性或方法,不能用于访问变量或函数。
- Optional Chaining 运算符不能用于赋值操作,因为表达式的值可能为 undefined。
- Optional Chaining 运算符只能用于 JavaScript 的 ES10 或更高版本。
结论
Optional Chaining 是一种非常有用的语法,它可以让我们更方便地访问对象的属性或方法,而不必担心对象本身是否为 null 或 undefined。使用 Optional Chaining,我们可以让我们的代码更加简洁和易于阅读,避免出现冗长和难以阅读的 if 语句或三元运算符。因此,我们应该在实际编程中积极使用 Optional Chaining 运算符。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675ea9aee49b4d07161919d3