//比较右边原型对象是否等于左边
//1.获取左边原型对象,如果为空返回false,如果等于右边原型对象返回true。
function myInstanceof(left,right){
let prototype= Object.getPrototypeOf(left)
while(true){
if(!prototype)return false
if(prototype===right.prototype)return true;
prototype=Object.getPrototypeOf(prototype)
}
}
//创建一个新对象,拥有目标对象的构造属性和方法,原型属性和方法
function myNew(target,...item){
if(typeof target==='object'){
function nfn(){}
nfn.prototype=target.prototype
return nfn.call(target,...item)
}else{
return {}
}
}
//创建新对象继承构造属性和方法,原型属性和方法
Object.myCreate = function (target) {
function fn(){}
fn.prototype=target.prototype
return new a()
}
console