对象扩展
一、简洁表达式
{
let o = 1;
let x = 2;
let es6 = {
o,
x
}
console.log(es6); //{o:1,x:2}
}
{
let es6 = {
hello(){
console.log("hello");
}
}
es6.hello(); //hello
}
二、属性表达式
{
let a = "b";
let es6 = {
[a]:"c" //相当于b:"c"
}
console.log(es6); // {b:"c"}
}
三、扩展运算符
{
let {a,b,...c} = {a:"aaa",b:"bbb",c:"ccc",d:"ddd"};
}
c={
c:"ccc",
d:"ddd"
}
四、Object新增方法
新增API
1.Object.is 和 ===用法相似
{
console.log(Object.is("abc","abc")); //true
console.log(Object.is([1,2,3],[1,2,3])); //false 引用类型地址不同
}
2.拷贝 Object.assign
{
console.log(Object.assign({a:"a"},{b:"b"})); //第一个参数是目标对象,第二个参数是需要拷贝的属性
}
结果是 {a:"a",b:"b"}
3. Object.entries
{
let es6 = {
a:"a",
b:"b",
c:"c"
}
for(let [keys,value] of Object.entries(es6)){
console.log([keys,value]);
}
}
结果是 ["a", "a"] ["b", "b"] ["c", "c"]