this
this는 현재 실행중인 함수의 컨텍스트를 나타낸다.
전역 컨텍스트에서의 'this'
function hello(){
console.log(this); // global
console.log(this === global); // true
}
hello();
Object [global] {
...
}
true
클래스 내부에서의 'this
class ClassA {
constructor(num){
this.num = num;
}
classAMethod(){
console.log('--------------------');
console.log(this);
console.log('--------------------');
}
}
const classA = new ClassA(10);
classA.classAMethod();
--------------------
ClassA { num: 10 }
--------------------
함수 호출에서의 'this'
function classAMethod(){
console.log(this);
}
classAMethod()
Object [global] {
...
}
'this'
console.log(this); // global이 아닌 객체를 담았다가 다시 비워진 상태
console.log(this === module.exports); // 외부로 가져갈수 있는 객체라는 의미, 다른 곳에서 import할 수 있음.
{}
true
이 부분은 더 이해가 필요할 것 같다.
더 알아보기 위해 찾아보다가 깔끔하게 정리한 글이 있길래 링크를 올린다.
두고두고 보고 이해하길..
https://haeunyah.tistory.com/86
'웹 > NodeJS' 카테고리의 다른 글
[Node.js] global, console (0) | 2023.10.30 |
---|---|
[Node.js] Node.js (0) | 2023.10.30 |
댓글