nullish coalescing 操作符是 ECMAScript 2020 中新增的一个操作符,它的作用是在第一个操作数值为 null 或 undefined 时返回第二个操作数。
操作符的语法
nullish coalescing 操作符的语法如下:
expression1 ?? expression2
其中,expression1
和 expression2
是表达式。
操作符的示例
nullish coalescing 操作符的示例代码如下:
const value1 = null ?? 'default'; // 'default' const value2 = undefined ?? 'default'; // 'default' const value3 = 0 ?? 'default'; // 0 const value4 = '' ?? 'default'; // '' const value5 = false ?? 'default'; // false
在上面的代码中,??
操作符的作用是将一个 null 或 undefined 的值替换为一个默认值。如果 expression1
的值为 null 或 undefined,返回 expression2
的值。否则,返回 expression1
的值。
操作符的应用场景
nullish coalescing 操作符主要用于变量默认值的设置。比如,在使用配置文件时,通常需要设置默认值,如果配置文件中没有设置某个值,就使用默认值。可以通过 nullish coalescing 操作符来实现。
-- -------------------- ---- ------- ----- ------ - - -------- ----- ----------- -- --------- ------ -- ----- --------- - - -------- -------------- -- ----- ----------- ----------------- -- -- --------- --------------- -- ------- ----- --- ---- --
在上面的代码中,如果 config
对象中没有设置 timeout
、maxRetries
或 logLevel
,就会使用 appConfig
中的默认值。
操作符的注意事项
在使用 nullish coalescing 操作符时,需要注意以下几点:
nullish coalescing 操作符仅在第一个操作数的值为 null、undefined 时返回第二个操作数,否则会返回第一个操作数的值。
nullish coalescing 操作符只能用于合法的左值表达式,如变量、属性引用和数组索引。
nullish coalescing 操作符的优先级低于逻辑或(
||
)和逻辑与(&&
)操作符,但高于条件(?:
)操作符。
操作符的结论
nullish coalescing 操作符是一个非常实用的操作符,可以方便地进行变量默认值的设置。它不仅让代码更加简洁,还可以提高代码的可读性和可维护性。在开发中,建议使用 nullish coalescing 操作符来设置变量的默认值,从而提高代码的健壮性和可靠性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67062811d91dce0dc859229c