instanceof 运算符用于检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上

const myInstanceof = (left, rigth) => {
	// 基本类型都返回false
	if (typeof left !== 'object' || left === null) {
		return false
	}

	const proto = Object.getPrototypeOf(left)
	while(true) {
		if (proto === null) return false
		if (proto === right.prototype) return true
		proto = Object.getPrototypeOf(proto)
	}
}