ES6中的解构赋值

let { foo: baz } = { foo: 'aaa', bar: 'bbb' };
baz // "aaa"
foo // error: foo is not defined

对象的解构赋值的内部机制,是先找到同名属性,然后再赋给对应的变量。真正被赋值的是后者,而不是前者。

找到同名属性foo,再把'aaa'赋给'baz'。

foo是匹配的模式,baz才是变量。真正被赋值的是变量baz,而不是模式foo

posted @ 2019-07-10 16:34  二猫子  阅读(202)  评论(0)    收藏  举报