instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上。
A instanceof B
检查
A.__proto__是否在
B.prototype
function myInstanceof(A, B) {
A = A.__proto__
;
B = B.prototype
;
while (A) {
if (A === B) {
return true;
}
A = A.__proto__
;
}
return false;
}
function C() {
}
function D() {
}
var o
= new C();
console
.log(myInstanceof(o
, C));
console
.log(myInstanceof(o
, D));
console
.log(myInstanceof(o
, Object
));
console
.log(myInstanceof(C.prototype
, Object
));
转载请注明原文地址: https://mac.8miu.com/read-487195.html