手写 Object.create
Object.create() 方法用于创建一个新对象,使用现有的对象来作为新创建对象的原型(prototype)
思路:将传入的对象作为原型
function create(obj) {
function F() { }
F.prototype = obj
return new F()
}
instanceof 方法
instanceof 运算符用于判断构造函数的 prototype 属性是否出现在对象的原型链中的任何位置。
function myInstanceof(left,right){
let proto = Object.getPrototypeOf(left)
prototype = right.prototype
while(true) {
if(!proto) return false
if(proto === prototype) return true
proto = Object.getPrototypeOf(proto)
}
}
余下还有。