天天看点

常用的Object静态方法

原型相关:

Object.create(原型,propertiesObject)可以根据原型创建对象,第一个参数必填,只填第一个参数就是给对象指定原型,类似__proto__的作用

Object.create(Person.prototype,{
    name:{
        configrable:true,
        value:'jim'
    }
})
           

Object.getPrototypeOf(obj) 根据实例获取原型 (也就是的__proto__指向)

Object.setPrototypeOf(obj,原型)给obj指定一个新原型

属性特征相关:

Object.defineProperties与Object.defineProperty可以设置属性的特征

Object.defineProperty(obj, prop, desc)
           
Object.defineProperties(obj,props)
           

属性及属性值操作相关:

Object.freeze(obj)被冻结的对象不能添加、删除、修改其属性及属性值

Object.assign(target,source1,source2,...)用于属性合并

Object.keys(obj)返回一个数组

Object.values(obj)返回一个数组

Object.entries(obj)返回一个二维数组

obj = {name:'jim',age:'18',score:'99'}
Object.entries(obj);//[['name','jim'],['age','18'],['score','99']]
           
js