ES6学习(13)对象方法扩展

  1. Object.is(val1,val2)判断两个值是否相等,和等号的差别在哪里?结合其他文档,我只看到了,在判断NaN的时候,这个会判定为true,等号会判定为false。
  2. Object.assign(obj1,obj2)合并两个对象,返回一个新对象,如果存在相同的属性,后者会覆盖前者。
  3. Object.setPrototypeOf()和Object.getPrototypeOf()设置和获取对象的原型对象。
const school = {
name : "小魔仙幼儿园"
}
const cities = {
xiaoqu : ['北京','上海','深圳']
}
// 并不建议这么做
Object.setPrototypeOf(school,cities);
console.log(Object.getPrototypeOf(school));

  1. 对于上述3获取设置对象的原型对象的方法,也可以通过Object.create去设置
Object.create(proto, [propertiesObject])

Object.create() 方法用于创建一个新对象,使用现有的对象来作为新创建对象的原型(prototype),第二次参数,是对属性特性的描述。

let obj1 = {name:'winie',honey:true};
let obj2 = Object.create(obj1,{age:{value:2,writable:true}})

上述例子中,name和honey存在在原型对象上,age是obj2的自有属性。

其他

Java程序的执行流程

2024-11-24 19:11:13

其他

ES6学习(13)对象方法扩展

2024-12-9 10:39:48

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
搜索