往期内容
Object 是 JS 中最重要的数据结构之一。ES6 对它进行了优化升级,这篇文章介绍Object本身的改变。
1.属性简洁的写法
ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法。
let apple = 4999;
const fruits = {apple};
console.log(fruits) // {apple: 4999}
//等价于
const fruits = {apple: apple};
//同样在函数中也是这样的套路
test(page,pageSize){
return {page,pageSize}
}
test(1,10)
/***______分割线______***/
//除了属性简写,方法也可以简写
const fruits = {
apple(){
return 20
}
};
// 等价于
const fruits = {
apple: function (){
return 20
}
};
2.属性名表达式
const name = 'banana';
const fruits = { apple:4.0, [name]:3.0};
//套路1
fruits.apple = 2;
//套路2
fruits[name] = 2.0;
3.对象解构赋值
详情跳转
4.扩展运算符
对象的扩展运算符(...)用于取出参数对象的所有属性,拷贝到当前对象之中,属于深拷贝 至于深拷贝是什么跳转公众号文章阅读
let fruits = { apple: 3, banana: 4 };
let fruitsMap = { ...fruits };
consloe.log(fruitsMap) // { apple: 3, banana: 4 }
由于数组是特殊的对象,所以对象的扩展运算符也可以用于数组。
let fruits = { ...['apple', 'banana'] };
console.log(fruits)// {0: "apple", 1: "banana",}
字符串也可以扩展运算符,它会自动转成一个类似数组的对象
console.log({...'apple'})
//{0: "a", 1: "p", 2: "p", 3: "l", 4: "e"}
下面是我的公众号大家一起写文章呀。