图片授权基于CC0协议
复习了一下 ES6 变量的解构赋值。
let arr = [10,20,30];let [a,b,c] = arr;console.log(a,b,c);//10,20,30
let obj = { foo: \\\'aaa\\\', bar: \\\'bbb\\\' };let { foo, bar } = obj;console.log(foo,bar);//aaa,bbb
function bar(){return {x:4,y:5,z:6,}}var {x:bam,y:baz,z:bap} = bar();console.log(bam,baz,bap);//4,5,6console.log(x,y,z);//x is not defined
平时的变量赋值中,x 是变量,4 赋值给 x;
x = 4; //变量 = 值
x = bam; //源值 = 赋值的目标变量
对象表达式的 () 包含
let a,b,c;function bar(){return {a:4,b:5,c:6,}}({a,b,c} = bar())console.log(a,b,c);//4,5,6
let x = 10, y = 20;[y,x] = [x,y]console.log(20,10);
重复赋值
let {a:x,a:y} = {a:1};console.log(x,y);
JavaScript 性能测试
参考资料:
《Vue.js源码全方位深入解析》
http://es6.ruanyifeng.com/#docs/destructuring
原创文章,作者:小道研究,如若转载,请注明出处:https://www.sudun.com/ask/34478.html