實現一個Object.create()方法

_冰點發表於2018-12-01

Obejct.create()方法定義:

Object.create()方法建立一個新物件,使用現有的物件來提供新建立的物件的__proto__。

方法實現程式碼:

  // method用來給建構函式擴充新的屬性
  let method = function(target, name, fn) {
    target.prototype[name] = fn
  }

  method(Object, 'creat', obj => {
    let o = {}
    o.__proto__ = obj

    return o
  })

  let obj = {
    name: 'Junhao'
  }

  console.log('create:', Object.create(obj))
  console.log('creat:', Object.creat(obj))
複製程式碼

輸出結果:

程式碼

可以看到這裡給Object新加的creat與created效果是相同的

相關文章