さて、このコードを見つけました。固有のJavaScript構造体:オブジェクト定義内のオブジェクト型の変数
どうしてこれはどういう仕組みですか?変数を解決するためにJavaScriptが使用する悪意のあるスキームの種類
私が見ているのは、C++の人です。クラス/オブジェクト定義には、定義されているクラスのオブジェクトへの存在しない参照が含まれています。真剣に、どう?
(正直に言うと、私は部分的に理解して - 私は... JSの名前をどのように解決するか、いつのstrawmanコンセプトを導き出すことができますが、多分この方法では問題は他の誰か、いつかにより使用されるであろう)
ギルティコード:
function Sio() {
this.someValue = 5;
this.doStuff = function() {
console.log("look: "+howDoYouResolveThisYouFoulCreature.someValue);
};
}
var howDoYouResolveThisYouFoulCreature = new Sio();
これは間違っています。
これは必ずしも問題ではありません。その関数が存在しない変数を参照している場合は、変数に関数を割り当てることもできます。 – pimvdb