📅  最后修改于: 2023-12-03 14:42:25.983000             🧑  作者: Mango
在 JavaScript 中,nullish 是一个判断空值的概念,即判断一个值是否是 null 或 undefined。
Nullish 是由 null 和 undefined 两个值组合而来,当一个值为 null 或 undefined 时,就可以判断它是 Nullish 值。在 JavaScript 中,Nullish 值可以用逻辑运算符进行判断。
在 JavaScript 中有两个 Nullish 判断符 ??
和 ??=
。下面我们介绍一下它们的用法。
??
判断符??
判断符用来判断一个值是否是 Nullish 值,如果是 Nullish 值,则返回给定的默认值,否则返回该值本身。下面是使用 ??
判断符的示例代码:
const foo = null ?? 'default';
console.log(foo); // 'default'
const bar = undefined ?? 'default';
console.log(bar); // 'default'
const baz = 'hello' ?? 'default';
console.log(baz); // 'hello'
在上面的代码中,我们分别使用 null
、undefined
和一个字符串作为 ??
左边的值,然后右边的默认值都是 'default'
。根据 Nullish 的定义,它们都是 Nullish 值,所以返回的都是默认值 'default'
。
??=
判断符??=
判断符用于将一个变量赋值为一个默认值,仅在变量的值为 Nullish 值的情况下才起作用。下面是使用 ??=
判断符的代码示例:
let foo = null;
foo ??= 'default';
console.log(foo); // 'default'
let bar = undefined;
bar ??= 'default';
console.log(bar); // 'default'
let baz = 'hello';
baz ??= 'default';
console.log(baz); // 'hello'
在上面的代码中,如果变量的值是 Nullish 值,则会把变量赋值为右边的默认值,否则变量保持原来的值。
在 JavaScript 中,Nullish 是一个很重要的概念,特别是在处理默认值的时候。使用 Nullish 判断符 ??
和 ??=
,可以轻松地判断一个值是否是 Nullish 值,并设定默认值。