웹 개발 메모장
[자바스크립트] 내부함수 본문
내부 함수
자바스크립트에서는 함수가 재선언이 가능합니다. 따라서 함수 이름을 만들 때 주의가 필요합니다.
예를 들어 다음과 같은 상황이 발생할 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | // 내가 calc 라는 함수를 정의 function calc(a, b) { return a + b; } // 홍길동이 calc 라는 함수를 정의 function calc(a, b) { return a * b; } //내가 sum 이라는 함수 정의 function sum(a,b,c,d) { // 내가 calc 함수를 호출 return calc(a,b) + calc(c,d); } | cs |
이와 같이 다른 사람과 함께 작업을 할 경우 의도치 않은 재선언이 일어날 수 있습니다.
물론 이름이 겹치지 않도록 사람들과 미리 이야기를 해놓아도 되지만 위와 같은 경우
1 2 3 4 5 6 | function sum(a,b,c,d) { function calc(a, b) { return a + b; } return calc(a,b) + calc(c,d); } | cs |
이런 식으로 내부 함수를 사용하면 해당 함수 밖에서 정의한 함수와 충돌이 일어나지 않습니다.
'옛날.. > 자바스크립트' 카테고리의 다른 글
[자바스크립트] 타이머 함수(setTimeout, setInterval) (0) | 2018.01.03 |
---|---|
[자바스크립트] 클로저 란? (0) | 2018.01.03 |
[자바스크립트] 가변 인자 함수 (0) | 2018.01.02 |
[자바스크립트] for in / for of 반복문 (0) | 2018.01.02 |
[자바스크립트] 짧은 조건문 (0) | 2018.01.02 |
Comments