为什么b是10而var[b=10]=[undefined]?
var [b=10] = [undefined];
console.log(b)
我想知道如何拆分第一行代码以及为什么 b 等于 10?谢谢!
回答
为什么 b 等于 10?
这是一个具有默认值的解构赋值。
它从数组中获取第一个元素并将其分配给一个名为 的新变量b。并且仅当该值未定义时,它才会被赋予一个默认值10:
var [b = 10] = [3];
console.log(b); // 3
如何拆分第一行代码
可以这样写:
var arr = [undefined],
b = arr[0];
if (b === undefined) { b = 10; }
console.log(b); // 10