对象

对象赋值

在ES5,如果我们在对象外声明变量,想让他作为对象里的值,我们需要些xx:xx,但在ES6中我们可以直接放进去

1
2
3
4
let a = 1;
let b = 2;
let ob = {a,b};
console.log(ob);

对象key值构建

当key是后台定义的,而不是前台确定的,那当我们使用时只需要一个中括号就可以解决

1
2
3
4
5
let key = 'a';
let ob = {
[key]:1
}
console.log(ob.a); //1

自定义对象方法

1
2
3
4
5
6
7
let ob = {
//匿名函数
add:function(a,b){
return a+b;
}
}
console.log(ob.add(1,2));

is比较方法

之前比较对象的元素是否相等我们用===,ES6引进了is方法,两者是有区别的,前者是同值相等后者是完全相等

1
2
3
4
5
6
7
8
let ob1 = {a:NaN};
let ob2 = {b:NaN};
let ob3 = {c:0};
let ob4 = {d:-0};
console.log(ob1.a===ob2.b);//false
console.log(ob3.c===ob4.d);//true
console.log(Object.is(ob1.a,ob2.b));//true
console.log(Object.is(ob3.c,ob4.d));//true

对象的连接

1
2
3
4
5
6
let ob1 = {a:NaN};
let ob2 = {b:NaN};
let ob3 = {c:0};
let ob4 = {d:-0};
let ob5 = Object.assign(ob1,ob2,ob3,ob4);
console.log(ob5);//{a: NaN, b: NaN, c: 0, d: -0}
-------------本文结束感谢您的阅读-------------