JS 람다식 사용 시 주의할 점

2022. 12. 1. 14:29프론트엔드/기타

반응형

일반적으로 JavaScript( 이하 JS ) 에서 this를 사용할 경우 일반 함수는 자기 자신을 의미하지만

람다식에서는 선언 당시의 this의 값을 고정시켜버린다.

 

아래 예제를 통해 쉽게 이해해 보자.

 

 

param = 'global param';

function printParam(){
	console.log(this.param);
}

let object = {
	param: 'object param',
	func: printParam
}
let object2 = {
	param: 'object2 param',
	func: printParam
}

object.func();
object2.func();


/*
object.func() 실행 결과 : object param
object2.func() 실행 결과 : object2 param
*/

 

 

param = 'global param';

let printParam = () => {
	console.log(this.param);
}

let object = {
	param: 'object param',
	func: printParam
}
let object2 = {
	param: 'object2 param',
	func: printParam
}

object.func();
object2.func();


/*
object.func() 실행 결과 : global param
object2.func() 실행 결과 : global param
*/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형

'프론트엔드 > 기타' 카테고리의 다른 글

[Turborepo(터보레포) + ReactNative] 설치해야 할 것  (0) 2024.05.13
모노레포(Monorepo) 란  (0) 2024.03.20