"
"
有的小伙伴第一次见到const {xxx}=this,很疑惑,其实这是es6的对象字面量增强写法,下面就为大家梳理一下。
先介绍对象字面量增强写法,包块对象数学,对象方法。
对象属性的增强写法:
//ES5写法
const name = "zhang";
const age = "21";
const sex = "man";
const obj = {
name: name,
age: age,
sex: sex
}
//ES6写
const name = "zhang";
const age = "21";
const sex = "man";
const obj = {
name,
age,
sex
}
对象方法的增强写法:
//ES5写法
const name = "yuan";
const obj = {
getName: function(){
console.log("my name is " + name);
}
}
//ES6写法
const name = "yuan";
const obj = {
getName(){
console.log("my name is " + name);
}
}
再介绍 const {xxx}=this是什么意思。
一个属性时候,以下两种写法是等价的:
const {xxx} = this
const xxx = this.xxx
多个属性的等同形式:
const {name,age,sex} = stu
const name =stu.name
const age = stu.age
const sex = stu.sex
将一个对象展开并且将其中的部分属性给另一个对象