1

语法

object instanceof constructor
参数 :
object : 某个实例对象
constructor :某个构造函数
功能 : instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链
原理 : 内部机制是通过原型链实现的。
用途 : 1.检测数据类型 2.判断一个引用类型变量是否是一个类的实例

手写一个instanceof

function instanceof (L,R){
    // L : 实例对象
    // R : 构造函数
    let O = R.prototype;
    L = L._proto_;
    while(true){
        if(L === Null){
            return false;
        }
        if(L === O){
            return true;
        }
        L = L._proto_;
    }
}

smallgang
232 声望7 粉丝