웹/NodeJS

[Node.js] this

caramel-bottle 2023. 11. 23.

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 의 this 란? (+ 화살표 함수의 this)

✨ console.log(this) 의 결과 이전에 정리해두었던 자바스크립트(이하 JS)의 this 에서 주의사항으로 언급했듯, 브라우저에서 실행되는 JS 의 this 와 node 에서 실행되는 JS 의 this 는 다르다. [Javascript] Jav

haeunyah.tistory.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

' > NodeJS' 카테고리의 다른 글

[Node.js] global, console  (0) 2023.10.30
[Node.js] Node.js  (0) 2023.10.30

댓글