Artificial intelligent assistant

インスタンスにprototypeは自動設定されない? 無理やり設定した場合は、普通のプロパティとして取り扱われる? **** prototype prototype() < var Hoge = function(p1) { this.p1 = p1; }; Hoge.prototype = { m1: function() { return this.p1; } }; var hoge = new Hoge('1'); hoge.m1(); //"1" * * * hoge.prototype; //undefined * * * prototype hoge.prototype = { m2: function() { return this; } }; * * * Function hoge.m2(); //Uncaught TypeError: hoge.m2 is not a function(…) * * * prototype() hoge.prototype.m2(); //Object {}

prototypeprototype

prototype
prototype
prototype
Hogeprototype m1 m1


Hoge.prototype;
// -> { m1: [Function] }
Hoge.m1();
//


Hoge`Object.getPrototypeOf(Hoge)` Hoge`Function.prototype`callFunction.prototype.call


Object.getPrototypeOf(Hoge) === Function.prototype
// -> true
Hoge.call == Function.prototype.call
// -> true


prototypenewnew prototype


hoge = new Hoge(1);
Hoge.prototype === Object.getPrototypeOf(hoge);
// -> true


new prototype

__proto__



hoge.__proto__ = {
m2: function() {
return this;
}
};

hoge.m2()
// -> Object { p1: "1" }
hoge.m1()
// :
// hogenew(Hogeprototype)
// m1


__proto__

xcX3v84RxoQ-4GxG32940ukFUIEgYdPy 60940008e5c3aa0b84ef62bdd845a93d