es6中的对象

ES6允许把声明的变量直接赋值给对象,我们看下面的例子。

let a="leiy"
let b="ly"
var obj={a,b}
console.log(obj);

打印结果:

{ a: 'leiy', b: 'ly' }

对象Key值构建

有时候我们会在后台取出key值,而不是我们前台定义好的,这时候我们如何构建我们的key值。比如我们在后台取了一个key值,然后可以用[ ] 的形式,进行对象的构建。

let key="skill"
var obj={
	[key]:'web'
}
console.log(obj);
console.log(obj.skill);

打印结果:

{ skill: 'web' }
web

对象方法就是把对象中的属性,用匿名函数的形式编程方法。这个在以前就有应用,我们这里只是简单的复习一下。

let obj={
	add:function(a,b){
		return a+b
	}
}
console.log(obj.add(1,2));

打印结果:

3

Object.is(  ) 对象比较

对象的比较方法,以前进行对象值的比较,经常使用===来判断,比如下面的代码:

var obj1={name:'leiy'}
var obj2={name:'leiy'}
console.log(obj1.name===obj2.name);
打印结果:
true

那ES6为我们提供了is方法进行对比。

let obj1={name:'leiy'}
let obj2={name:'leiy'}
console.log(Object.is(obj1.name,obj2.name));

打印结果:

true

区分=== 和 is方法的区别是什么,看下面的代码输出结果。

console.log(+0 === -0);  //true
console.log(NaN === NaN ); //false
console.log(Object.is(+0,-0)); //false
console.log(Object.is(NaN,NaN)); //true

===为同值相等,is()为严格相等。

Object.assign(  )合并对象

操作数组时我们经常使用数组合并,那对象也有合并方法,那就是assgin(  )。

let obj1={name:'leiy'}
let obj2={rr:'ly'}
let obj3={cc:'tui'}
let obj=Object.assign(obj1,obj2,obj3)
console.log(obj);

打印结果:

{ name: 'leiy', rr: 'ly', cc: 'tui' }



猜你喜欢

转载自blog.csdn.net/weixin_41013537/article/details/80400759