Javascriptでのプロパティのアクセスについて、非常に簡単な質問があります。これまで最も簡単なものになるはずですが、これが動作しない理由を私は理解カント:Javascriptで関数内のプロパティを呼び出す
私はオブジェクトがあります。
var myObj = {
first: "First text",
second: "Second text",
third: "Third text"
};
をそして、私は最初のプロパティを呼び出したい:
console.log(myObj.first); // First text
すべて大丈夫。しかし、私は、関数からこのプロパティを呼び出すと、また新しい価値"Fourth text"
で新しいプロパティ"Fourth"
を割り当てたい:あなたが見ることができるように
function myFunction(myObj){
console.log(this.first); // [object Object] undefined
this.fourth = "Fourth text";
}
myFunction(myObj);
console.log(myObj.fourth); // undefined
、最後の2つの呼び出しが未定義になります。なぜ私は理解できないのですか?任意のヘルプは非常に高く評価されます:)
はい、私は関数はオブジェクトと関連していないことを忘れてしまった、と私はそれを関連付ける必要があります。しかし、別の問題があります.Google Chromeのコンソールの結果は、あなたのものとは異なります。たとえば、私があなたの解決策を実行すると、 'undefined undefined'と' undefined'が得られます... – Nikita
気をつけてください。あなたがChromeで書いた間違い。あなたのコードをもう一度見て、それは未定義ではありません –
はい、問題は私がmyFunctionをいくつかの場所で定義していることです。何らかの形でそれは何かに混じっていた。 'var myFunction = function(){...}' – Nikita