学习笔记:ES6之对象扩展

来源:互联网 发布:dz论坛源码 编辑:程序博客网 时间:2024/06/05 06:46

函数新增特性:

简洁表示法

(1)普通对象

let a=1;

let b=2;

let es5={

a:a,

b:b

};

let es6={

a,

b

};

console.log(es5,es6);

Object{a: 1, b: 2} Object {a: 1, b:2}结果一样

(2)带有函数的对象

let es5_methods={

hello:function(){

console.log('hello');

}

};

 

let es6_methods={

hello(){

console.log('hello');

}

};

console.log(es5_methods.hello(),es6_methods.hello());--hello

 

属性表示式

let a='b';

let es5_obj={

a:'c',

b:'c'

};

console.log(es5_obj);--Object {a: "c", b:"c"}

let es6_obj={

[a]:'c'

};

console.log(es6_obj);--Object {b: "c"}

 

扩展运算符

--import'babel-polyfill'支持性不好

let {a,b,...c}={a:'test',b:'kill',c:'ddd',d:"ccc"};

Object新增方法

判断是否相等 类似于===

Object.is('字符串','字符串');

Object.is('数组','数组');

拷贝:合并两个对象--浅拷贝,只拷贝自身对象的属性,不拷贝来自继承,枚举的对象

Object.assign({原始对象},{要拷贝的对象});

 

原创粉丝点击