ES6 对象的新增方法

1.Object.is()方法来解决"==="中一些恒等中的缺点     console.log(+0 === -0);//true     console.log(Object.is(+0,-0));//false
    console.log(NaN === NaN); //false     console.log(Object.is(NaN,NaN));//true   2.Object.assign()方法可以合并指定对象至目标对象内部     传参,合并所有对象,返回给参数1的目标对象     let obj1={name:'dayfly1',age:100};     let obj2={name:'dayfly2',age:200};     let obj3={gender:'男'};  console.log(Object.assign(obj1,obj2,obj3));     第一个对象得到合并后的结果  console.log(obj1); ES6 对象的新增方法     (1)如果属性有相同,后面的源对象内容会覆盖之前的属性值     (2)如果直接传入非对象内容,会转换为对象     (3)如果传入的是undefined和null会报错   3. Object.getPrototypeOf() 和 Object.setPrototypeOf()     ES6 对象的新增方法     以obj对象为原型     let f=Object.create(obj);     console.log(f.fn());       检测是obj是否f的原型对象     console.log(Object.getPrototypeOf(f)===obj); //true     输出原型对象的fn     console.log(f.fn());
    setPrototypeOf(f,obj2)设置f的原型对象为obj2     Object.setPrototypeOf(f,obj2);     console.log(Object.getPrototypeOf(f)===obj2);//true     console.log(f.fn()); //fn2   4.super关键字,用于原型中方法的继承功能

 ES6 对象的新增方法

 

 

    Object.setPrototypeOf(f,obj);     console.log(f.fn());
    let h=Object.create(f);     console.log(h);     console.log(h.fn());     ES6 对象的新增方法

 

 

 
上一篇:ES6基础


下一篇:ES6 21.异步async