实现js中的instanceof

js中的instanceof操作符用来判断某个对象是否是某个构造函数的实例,使用方法为obj instanceof fun,左侧是一个对象,右侧是一个构造函数,如果该对象是构造函数的实例(含继承),则返回true,否则返回false。
下面我们来实现一下instanceof:

function instance_of(l, r){
	// l代表操作符左侧的对象,r代表操作符右侧的构造函数
	while(l.__proto__ !== null){
		if(l.__proto__ === r.prototype){
			return true;
		}
		l = l.__proto__;
	}
	return false;
}
原创文章 58 获赞 84 访问量 4851

猜你喜欢

转载自blog.csdn.net/whuhewei/article/details/105837959