ES6中对象
Posted 千と千寻の
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6中对象相关的知识,希望对你有一定的参考价值。
ES6允许把声明的变量直接赋值给对象,我们看下面的例子。
let name="jspang"; let skill= ‘web‘; let obj= {name,skill}; console.log(obj);
对象Key值构建
有时候我们会在后台取出key值,而不是我们前台定义好的,这时候我们如何构建我们的key值那。比如我们在后台取了一个key值,然后可以用[ ] 的形式,进行对象的构建。
let key=‘skill‘; var obj={ [key]:‘web‘ } console.log(obj.skill);
自定义对象方法
对象方法就是把兑现中的属性,用匿名函数的形式编程方法。这个在以前就有应用,我们这里只是简单的复习一下。
var obj={ add:function(a,b){ return a+b; } } console.log(obj.add(1,2)); //3
Object.is( ) 对象比较
对象的比较方法,以前进行对象值的比较,经常使用===来判断,比如下面的代码:
var obj1 = {name:‘jspang‘}; var obj2 = {name:‘jspang‘}; console.log(obj1.name === obj2.name);//true
那ES6为我们提供了is方法进行对比。
var obj1 = {name:‘jspang‘}; var obj2 = {name:‘jspang‘}; console.log(obj1.name === obj2.name);//true 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( )。看一下啊具体的用法。
var a={a:‘jspang‘}; var b={b:‘技术胖‘}; var c={c:‘web‘}; let d=Object.assign(a,b,c) console.log(d);
以上是关于ES6中对象的主要内容,如果未能解决你的问题,请参考以下文章