📜  JavaScript Object create()方法

📅  最后修改于: 2020-10-25 11:40:15             🧑  作者: Mango

JavaScript Object.create()方法

Object.create()方法用于创建具有指定原型对象和属性的新对象。我们可以通过Object.creates(null)创建没有原型的对象。

句法:

Object.create(prototype[, propertiesObject])

参数

prototype:它是必须从中创建新对象的原型对象。

propertiesObject:这是一个可选参数。它指定要添加到新创建对象的可枚举属性。

返回

Object.create()返回具有指定原型对象和属性的新对象。

浏览器支持:

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes

例子1

const people = {
  printIntroduction: function ()
   {
    console.log(`My name is ${this.name}. Am I human? ${this.isHuman}`);
  }
};
const me = Object.create(people);
me.name = "Marry"; // "name" is a property set on "me", but not on "person"
me.isHuman = true; // inherited properties can be overwritten
me.printIntroduction();

输出:

"My name Marry. Am I human? true"

例子2

function fruits() {
        this.name = 'franco';
        }
       function fun() {
        fruits.call(this)
 }

        fun.prototype = Object.create(fruits.prototype);
        const app = new fun();
        console.log(app.name);

输出:

"franco"

例子3

function fruits() {
        this.name = 'fruit';
        this.season = 'Winter';
        }

        function apple() {
        fruits.call(this);
        }

        apple.prototype = Object.create(fruits.prototype);
        const app = new apple();
        console.log(app.name,app.season);
        console.log(app.season);

输出:

"fruit"
 "Winter"
"Winter"