ES6(ES2015)中新增的对象方法

在ES6中为对象新增了一些方法,下面为大家简单介绍一下这些方法

1.Object.is 判断两个值是否完全相等

 console.log(Object.is(120, 120)); //相当与===
 console.log(Object.is(NaN, NaN));//NaN比较特殊 输出结果为true
 console.log(NaN === NaN); //但是两个NaN全等判断输出为false

通过上面代码的输出结果我们可以得知,Object.is这个方法在一般情况下相当于 === ,但是在对两个NaN进行判断的时候,它输出的结果却与 === 判断输出的结果不同

2.Object.assign 对象的合并 需要传递两个参数 第一个参数为被覆盖的对象 第二个参数为要覆盖的对象

const config1 = {
            host: 'localhost',
            port: 3306,
            name: 'root',
            pass: 'root',
            test: 'test'
        };
        const config2 = {
            host: 'www.4399.com',
            port: 3307,
            name: 'root1',
            pass: 'root1',
            test2: 'test2'
        }
        console.log(Object.assign(config1, config2));

通过观察以上代码在控制台中的输出结果可以发现使用该方法的返回结果是一个新的对象,该对象中的属性是由传入的两个对象共同决定的,如果两个对象中有相同的属性名,则第二个对象的属性会覆盖第一个对象的属性, 而两个对象中不重名的属性则都会给到返回的那个新的对象。

 3.Object.setPrototypeof 和 Object.getPrototypeof

 Object.setPrototypeof 的作用是设置原型对象 需要接受两个参数 第一个参数为要设置原型的对象,第二个参数为该对象的新原型

 Object.getPrototypeof 的作用是返回指定对象内部的原型 只需要接受一个参数 该参数为某个对象

const person = {
            name: 'Bob'
        }
const cities = {
            workPlace: ['北京', '上海', '深圳']
        }
Object.setPrototypeOf(person, cities);
console.log(Object.getPrototypeOf(person));
console.log(person);

在上面的代码中通过setPrototypeOf将cities作为了person对象的新原型,通过getPrototyeOf获取person对象的原型,并在控制台中直接打印person,通过观察打印输出的结果可以发现,person的原型已经被修改为了cities.

以上就是关于ES6中对象新增方法的介绍 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值