【发布时间】:2021-12-13 12:39:39
【问题描述】:
我正在尝试使用 Logical AND && 和 Nullish 合并运算符 ?? 运算符来条件呈现变量/值。
但由于某种原因,我不清楚这两个运算符的用法以及它们的工作原理。
请解释这两者之间的区别以及我们何时应该使用其中任何一个来代替if 语句。
/* -------------------- ?? operator -------------------- */
const foo = null ?? '?? default string';
console.log(foo);
const baz = 0 ?? 10;
console.log(baz);
/* -------------------- && operator -------------------- */
const foo_1 = null && '&& default string';
console.log(foo_1);
const baz_1 = 0 && 20;
console.log(baz_1);
【问题讨论】:
-
&&是 logical AND 和??是 Nullish coalescing operator -
通常,人们比较
||和??,而不是&&和??。 -
你到底有什么不明白的?
标签: javascript typescript nullish-coalescing