为了账号安全,请及时绑定邮箱和手机立即绑定

写了一个模拟instanceof的函数

function instanof(obj,func){
    if(func.prototype==undefined){
        throw new Error("这个func是什么鬼@_@");
    }
    if(typeof obj != 'object'){
        throw new Error("这个obj是什么鬼@_@");
    }
    var a=obj.__proto__;
    while(a!=undefined){
        if(a===func.prototype){
            return true;
        }
        a=a.__proto__;
    }
    return false;
}

老师你看看写的没错吧~嘛?

正在回答

2 回答

应该不对。至少我认为这个函数的实现应该 有两点需要注意。

  1. 是一个递归

  2. 应该是值比较不是引用比较

  3. __proto__ 这个属性并不是ECMAscript规范中的。

0 回复 有任何疑惑可以回复我~

不对吧!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

写了一个模拟instanceof的函数

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信