js中Object.create()用法


1、用Object.create()方法创建新对象,并使用现有对象提供新对象的proto。

2、提供两个参数,第一个是新创建的原型对象,第二个是为新创建的对象添加属性的对象。

// father 对象
let father = {
    name: 'father',
    friend: ['abby', 'bob']
}

// 生成新实例对象 child1
let child1 = Object.create(father)

// 更改值类型属性
child1.name = '修改了name'
console.log(child1.name) //修改了name

// 更改引用类型值
child1.friend.push('chely')
console.log(child1.friend) //[ 'abby', 'bob', 'chely' ]

// 生成新实例对象 child2
let child2 = Object.create(father)
console.log(child2.name) //father
console.log(child2.friend) //[ 'abby', 'bob', 'chely' ]

Object.create()创建方法实例

const person = {
  isHuman: false,
  printIntroduction: function() {
    console.log(`My name is ${this.name}. Am I human? ${this.isHuman}`);
  }
};

const me = Object.create(person);

me.name = 'Matthew'; // "name" is a property set on "me", but not on "person"
me.isHuman = true; // inherited properties can be overwritten

me.printIntroduction();
// expected output: "My name is Matthew. Am I human? true"

运行结果

“My name is Matthew. Am I human? true”


文章作者: 弈心
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 弈心 !
评论
  目录