解构
让我们暂时回顾phi
函数:
function phi(table) {
return (table[3] * table[0] - table[2] * table[1]) /
Math.sqrt((table[2] + table[3]) *
(table[0] + table[1]) *
(table[1] + table[3]) *
(table[0] + table[2]));
}
这个函数难以阅读的原因之一,是我们有一个指向数组的绑定,但我们更愿意拥有数组的元素的绑定,即let n00 = table [0]
以及其他。 幸运的是,有一种简洁的方法可以在 JavaScript 中执行此操作。
function phi([n00, n01, n10, n11]) {
return (n11 * n00 - n10 * n01) /
Math.sqrt((n10 + n11) * (n00 + n01) *
(n01 + n11) * (n00 + n10));
}
这也适用于由let
,var
或const
创建的绑定。 如果你知道要绑定的值是一个数组,则可以使用方括号来“向内查看”该值,并绑定其内容。
类似的技巧适用于对象,使用大括号代替方括号。
let {name} = {name: "Faraji", age: 23};
console.log(name);
// → Faraji
请注意,如果尝试解构null
或undefined
,则会出现错误,就像直接尝试访问这些值的属性一样。