私はinstanceof演算子で遊んでいます。自分の理解が正しいかどうか知りたい
var C = function(){};
// in the above statement C has a "prototype" property which points to an object which has
// the constructor property which points to C constructor
var o1 = new C();
// in above statement o1.__proto__ is points to C.prototype. that means inheriting from C.prototype.
console.log(o1 instanceof C) // returns true
//instanceof will check o1.__proto__ is equals to C.prototype(recursively until it finds null object).
C.prototype = {};
console.log(o1 instanceof C) // false;
in the above case o1 was inherited from C.prototype which points to the different object not the present C.prototype object (empty object). so the instanceof condition check fails hence its false.
私の解釈が間違っているかどうか教えてください