美文网首页
解构赋值

解构赋值

作者: 冰冰啦 | 来源:发表于2019-01-05 20:03 被阅读0次

解构赋值: 分解一个对象的结构

1.数组

let arr = [1,2,3]
let [a,b,c] = arr //左边的结构和右边类似
a = 1 //true
b = 2 //true
c = 3 //true

2.复杂嵌套

let arr2 = [{
  name: 'hzj',
  age: '20'
},[1,2],3]
let [obj,[a,b],c] = arr2
// obj = {name: 'hzj',age: '20'}
// a = 1, b = 2
// c = 3
console.log(obj.name) // 输出'hzj'

3.对象解构的变量名

let obj = {name: 'hzj',age: 10}
let {name,age} = obj
// name = 'hzj'
// age = 10
// 若想自定义变量名称
let {name: newName,age: newAge} = obj
// newName = 'hzj', newAge = 10
// name未定义
// age未定义,因为名字已经变了.

4.默认解构赋值

let obj = {name: 'hzj'} //无age属性
let {name,age} = obj //name为'hzj',age为undefined
let {name,age=10} = obj  //name为'hzj',age为10
//如果能取出来值就用取出来的值,没有就用默认的值

5.省略解构

let arr = [1,2,3,4]
let [,,,a] = arr
// a = 4,只有a被解构

相关文章

网友评论

      本文标题:解构赋值

      本文链接:https://www.haomeiwen.com/subject/ouxdkqtx.html