원래 익명의 함수였던 함수를 호출하려고합니다. 그러나이 함수는 내 코드에서 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();
};
그러나 이후 그래서 나는이 같은 함수를 정의 나는 내가 사용할 수 없다는 것을 깨달았다. this
은 익명으로 처리됩니다. 익명 기능으로 confirmButton()
으로 전화하려면 어떻게해야합니까?
을 오염하지 않습니다를 onclick을 사용하지 말고 콜백 내부에서 작동하는 요소를 노출하는 addEventListener를 사용하십시오. – charlietfl
[이 "키워드는 어떻게 작동합니까?] (https://stackoverflow.com/questions/3127429/how-does-the -this-keyword-work) – Michael