2-9笔记

1.Object.getPrototypeOf()
定义:方法用于获取指定对象的原型对象(也就是protp的指向)
语法:

Object.getPrototypeOf( obj ) 

返回值:一个表示给定对象的所有可枚举属性的字符串数组
实例:

const obj = {x:1,y:2}
 console.log(Object.getPrototypeOf(obj))
  1. Object.keys()
    定义:该数组包含给定对象的⾃身可枚举属性名
语法:Object.keys(obj)

返回值:该⽅法返回⼀个数组
实例:

    const obj = {x:1,y:2}
      const arr = Object.keys(obj)
      console.log(arr)

3.Object.values()
定义:该数组包含给定对象的⾃身可枚举属性值

语法:Object.values(obj)

返回值:该⽅法返回⼀个数组
实例:

const obj = {x:1,y:2}
      const arr = Object.values(obj)
      console.log(arr)
  1. Object.entries()
    定义:该数组包含给定对象的⾃身可枚举属性名和属性值
语法:Object.entries(obj)

返回值:该方法返回一个数组
实例:

5.Object.hasOwnProperty()
定义:检测⼀个属性是否是⾃身属性

语法:obj.hasOwnProperty(prop),对象.hasOwnProperty(属性名)

返回值:布尔值
实例:

/Object.hasOwnProperty()检查的⼀个属性是否是⾃身属性
const obj = {
x:1,
y:2
}
obj.o = 5
obj.__proto__.z = 3
Object.getPrototypeOf(obj).w = 4
//语法:对象.hasOwnProperty(属性名)
const r1 = obj.hasOwnProperty('o')//true
const r2 = obj.hasOwnProperty('w')//false
console.log(r1,r2);

6.Object.prototype.propertyIsEnumerable()
定义:该⽅法⽤于检测⾃身属性是否可枚举。

语法:obj.propertyIsEnumerable(prop)

返回值:布尔值
实例:

//obj.propertyIsEnumerable(prop)
const obj = {
x:1,
y:2,
z:3,
}
//请把y改成不可枚举 > 修改enumerable属性 > Object.defineProperty()
Object.defineProperty(obj,'y',{
enumerable:false
})
const r1 = obj.propertyIsEnumerable('x')
const r2 = obj.propertyIsEnumerable('y')
console.log(r1,r2);

  1. Object.assign()
    定义: Object.assign() ⽅法将所有可枚举属性从⼀个对象复制到另⼀个对象。
语法:Object.assign(obj1,obj2)

返回值:修改后的对象。
实例:

   const obj1 = { x: 1,y:5}
const obj2 = { y: 2, z: 3 }
obj2.__proto__.w = 4
Object.assign(obj1,obj2)
console.log(obj1) //输出{x:1,y:2,z:3}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容