Мне кажется, это очевидно - каждый объект имеет ссылку на свой прототип, который устанавливается при первом создании объекта. Если вы установите прототип на что-то новое:
Gadget.prototype = {price: 100};
вы не изменили ссылки на старый прототип. Только объекты, созданные впоследствии, будут иметь свой прототип с новым значением.
Думайте об этом как о разнице между этим:
var a = {foo: true};
var b = a;
a = {baz: 'quux'}; // b refers to the original value of a
и это:
var a = {foo: true};
var b = a;
a.baz = 'quux'; // a and b refer to the same object