もともとは匿名関数であった関数を呼び出すことを検討していますが、私のコードでこの関数が3回必要です。Javascriptの無名関数で関数を呼び出すときに "this"キーワードを使う方法は?
function saveButton() {
this.parentElement.parentElement.querySelector('h3').innerHTML = this.parentElement.querySelector('input[name="task-title"]').value;
this.parentElement.parentElement.querySelector('p').innerHTML = this.parentElement.querySelector('textarea').value;
this.parentElement.parentElement.querySelector('.popup').className = 'popup hidden';
this.parentElement.parentElement.querySelector('.overlay').className = 'overlay hidden';
saveWork();
};
は、私はこのような匿名関数でこの関数をコールする場合:
confirmButton.onclick = function()
saveButton();
};
しかし、その後 は、だから私はこのような関数を定義しました私は私がを使用することができなかったことに気づいた無名関数の。匿名機能でconfirmButton()
に電話するにはどうすればよいですか?
を汚染しない、スコープの深さの任意のレベルで使用することができ
をonclickを使用せず、コールバック内で動作する要素を公開するaddEventListenerを使用してください。 – charlietfl
[この "キーワードの仕組みは?](https://stackoverflow.com/questions/3127429/how-does-the -this-keyword-work) – Michael