對象的解構(gòu)賦值
et {對象的屬性名: 要聲明的變量名} = 對象
就會自動聲明一個變量出來,變量的值就是對象中對應(yīng)的屬性的值
如下例子:
let obj = {
name: '華為',
age: 30
}
let name1 = obj.name // 以前的賦值
let {name: name2} = obj // 解構(gòu)賦值
console.log(name1) // 華為
console.log(name2) // 華為
如果對象的屬性名和要聲明的變量名同名可以簡寫成一個
let obj = {
name: '華為',
age: 30
}
// let { name: name, age: age } = obj;
// 對象的屬性名name/age和變量名name/age相同,則可以簡寫成一個
let {name, age} = obj
console.log(name, age) // 華為 30
// 主要應(yīng)用于:import { 要導(dǎo)入的內(nèi)容, 要導(dǎo)入的內(nèi)容 } from "模塊"
function test ({name, age}){
console.log(name, age)
}
test(obj)
數(shù)組的解構(gòu)賦值
可以從數(shù)組中提取值,按照對應(yīng)位置,對變量賦值
let arr = [1, 2, 3, 4]
let [num1, num2, num3, num4] = arr
也可以這樣
let [num1, , , num4] = arr
console.log(num1) // 1
console.log(num4) // 4
二維數(shù)組
let arr = [[1, 2], [3, 4]]
let [[num1, num2], [num3, num4]] = arr
console.log(num1, num2, num3, num4) // 1 2 3 4