是否有以下的速记版本:
let myVar = "I contain a value!";
const myNewerVar = "I contain a newer value!";
if (myNewerVar) {
myVar = myNewerVar;
}
myVar
只应在 myNewerVar
为真时设置。
这个的较短版本是:
let myVar = "I contain a value!";
const myNewerVar = "I contain a newer value!";
if (myNewerVar) myVar = myNewerVar;
我不喜欢重复阅读
myNewerVar
,不过。
有没有办法进一步简化这个?
是的,有:
myVar = myNewerVar || myVar;
您可以简单地使用 OR 运算符
例如
myVar = myNewerVar || myVar
如果您使用 Typescript 编写,您也可以使用 nullish 合并。当其左侧操作数为空或未定义时,它返回其右侧操作数。
const foo = null;
const bar = false;
const fooTest1 = foo || 'Test 1'; // Output: "Test 1"
const fooTest2 = foo ?? 'Test 2'; // Output: "Test 2"
const barTest1 = bar || 'Test 3'; // Output: "Test 3"
const barTest2 = bar ?? 'Test 4'; // Output: false