结构赋值,又叫结构化赋值,出现主要是为了方便从后端获取复杂数据结构值。下面介绍解构赋值。git
let obj = {
name: 'aa',
age: 17
}
复制代码
以上面obj对象为例github
let name
let age
({name,age} = obj)
console.log(name,age) //aa 17
复制代码
经过{}能够很容易获取到obj里面的name,age对象。
获取同名对象还能够这样写web
let {name,age} = obj
console.log(name,age) //aa 17
复制代码
获取不一样名变量能够在后面重写后端
let {name:oName,age:oAge} = obj
console.log(oName,oAge) //aa 17
复制代码
默认赋值 sex = 'male'数组
let {name:oName,age:oAge,sex = 'male'} = obj
console.log(oName,oAge,sex) //aa 17 male
复制代码
默认赋值也可在函数形参中使用微信
function sum(x= 10,y = 20){
console.log(x + y) //50 30+20=50,传入取实参,不传入取默认值。
return x + y
}
sum(30)
复制代码
let arr = [1,2,3]
let [x,y,z] = arr // 也可写成 let {0:x,1:y,2:z} = arr
console.log(x,y,z) //1,2,3
复制代码
由于数组有length,因此获取数组length方法数据结构
let arr = [1,2,3]
let {length} = arr
console.log(length) //3
复制代码
若是数组里有对象,也是能够结构赋值的函数
let arr1 = [1,2,3,{name:'aa'}]
let [,,,{name}] = arr1
console.log(name) //aa
复制代码
结构赋值相对简单,在这里就很少说了。post
广告:
做者github:github.com/webxukai
做者gitee:gitee.com/webxukai
做者微信:e790134972
做者QQ:我想你应该知道了!
做者QQ邮箱:同上,呵呵!学习
ES6学习let&const
juejin.im/post/5c683e…
ES6学习...运算符
juejin.im/post/5c6917…