메소드에서는 this는 해당 객체를 가르킵니다.
const audio = {
title : 'a',
play (){
console.log('play', this);
}
}
audio.play();
audio.stop = function() {
console.log('stop this', this0);
}
audio.stop();
함수에서는 this는 widndow 객체를 가르킵니다.
function playAudio(){
console.log(this);
}
playAudio();
생성자 함수에서는 this는 객체를 가르킵니다.
function Audio(title){
this.title = title;
console.log(this);
}
const audio = new Audio('a')
화살표 함수에서는 this는 항상 상위스코프의 this를 가르킵니다. => Lexical this
const audio = {
title: 'audio',
categories: ['1', '2', '3'],
displayCategories() {
this.categories.forEach(category => {
console.log(this);
console.log(category);
});
}
}
audio.displayCategories();
'자바스크립트' 카테고리의 다른 글
[JavaScript] 타입 (0) | 2025.03.05 |
---|---|
[JavaScript] 변수 선언 (0) | 2025.03.04 |
[JavaScript] 타이핑 측정하는 웹사이트 만들기 (1) | 2025.02.28 |
[JavaScript] 백그라운드 비디오 앱 (0) | 2025.02.25 |
[JavaScript] 제품 목록을 표시하고 검색 및 필터링 기능 (0) | 2025.02.24 |