EcmaScript 6 中的可选链接和条件赋值
为了简化条件赋值和空安全属性访问,EcmaScript 6 引入了几个运算符以提高代码效率和可读性。
可选链接 (ECMAScript 2020)
可选链接,由 ? 表示。运算符,允许安全遍历可为空的属性。在您的示例中,您可以使用可选链简化第 4 行:
const query = succeed => (succeed ? { value: 4 } : undefined); let value = 3; for (let x of [true, false]) { value = query(x)?.value; } // Output: 4
空值合并赋值 (ECMAScript 2021)
对于条件赋值,空值合并赋值运算符??= 可以使用。仅当左侧操作数的计算结果为 null 或未定义时,它才将值分配给左侧操作数。这避免了对 try-catch 块或显式 null 检查的需要:
query(x)?.value ??= value;
注意事项和替代方案
以上是可选链接和空合并如何改进 JavaScript 中的条件赋值?的详细内容。更多信息请关注PHP中文网其他相关文章!