TIR: 완벽가이드 1-2. 코어자바스크립트 함수(3)- 220704

Lumpen·2022년 7월 4일
0

TIR

목록 보기
16/40

자신만의 함수 프로퍼티 정하기

자바스크립트에서 함수는 원시 값이 아니지만 특별한 종류의 객체이고 이는 함수가 프로퍼티를 가질 수 있음을 의미한다
함수를 여러번 호출해도 유일한 값이 유지되어야 하는 정적 변수가 필요할 떄는 함수의 프로퍼티를 사용하는 것이 편리한 경우가 많다

uniqueInteger.counter = 0;

function uniqueInteger() {
	return uniqueInteger.counter++;
}

네임스페이스로서의 함수

자바스크립트는 함수 단위의 유효 범위를 갖는다
함수 내부에서 정의된 변수는 해당 함수 내부에서는 접근할 수 있지만 그 함수 바깥에는 존재할 수 없다
함수 밖에서 전역 변수이고 프로그램 전체에서 접근할 수 있다

이러한 성질을 이용하여 함수를 네임스페이스로써 사용할 수 있다

function myModule() {
  // 모듈화할 코드들
  // 전역 네임스페이스를 어지럽히지 않고 사용 가능
}
myModule() // 함수를 호출해야 사용 가능하다

이름 하나를 더 쓰는 것도 맘에 안들면 익명 함수로 사용 가능

(function () {
  // 모듈 코드 작성
}())

가장 바깥의 괄호가 없으면 함수 선언식으로 오해하고
괄호를 쳐주면 표현식으로 이해한다는데..

profile
떠돌이 생활을 하는. 실업자는 아니지만, 부랑 생활을 하는

0개의 댓글