ES6 destructure assignment 解构赋值详解编程语言

destructure assignment就是解构赋值,简单来说,就是能将一个对象属性赋给另外一个对象属性、将一个数组元素赋给另外一个数组元素。什么意思呢?我们来看例子。

数组解构

var arr=[1,2]; 
var [a,b]=arr; 
console.log(a,b);//1,2 

没有解构,需要这样写

var arr=[1,2]; 
var a,b; 
a = arr[0]; 
b = arr[1]; 
console.log(a,b);//1,2 

两者对比,可以看到,免去了声明变量、按索引取值赋值的繁琐,简单明了,看一下babel编译结果

var arr = [1, 2]; 
var a = arr[0], 
    b = arr[1]; 
console.log(a, b); //1,2 

对象解构

var obj = {name :"hi"} 
var {name:x} = obj 
console.log(x) //hi 

看一下babel的编译结果

var obj = { 
  name: "hi" 
}; 
var x = obj.name; 
console.log(x); //hi 

可以看到x = obj.name目标参数=源对象.目标属性,因为x是变量,所以可以随意命名,那么x当然可以改为name

var {name:name} = obj 

因为属性名与值同名,所以可以继续简化

var {name} = obj 

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/20299.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论