월루를 꿈꾸는 대학생
DeepDive JS 본문
728x90
12.5 함수 호출
- 함수 호출 시 실행 흐름을 중단하고 호출된 함수로 실행 흐름을 옮긴다.
매개변수와 인수
-
function add(x,y) {
return x+y;
}
var result x+y;
- 함수 매개변수를 외부에서 참조 불가
- 함수 호출 시 인수 숫자가 적어도 오류는 안 남 ; 다만 undefined
- 자바 스크립트는 문법상 매개변수가 맞나 아닌가 갯수 확인도 안 하고 타입도 사전에 정의가 안되는 놈이라 자체적인 처리가 필요하다
참조에 의한 전달과 외부 상태 변경
- 함수 인자로 객체의 참조변수를 넣으면 매개변수가 참조하는 값을 가리키기 때문에 값의 변화가 이뤄질 수 있다.
- 원시값은 변경 불가능하기에 재할당 됨
- 객체를 불변객체로 만들어 대응
즉시 실행함수
(
function() {
var a=3;
var b=5;
retrun a+b;
}()
);
- 즉시 실행함수는 ( ) 로 감싸야함
재귀 함수
- 자기 자신을 호출하는 함수
- 무수히 자기자신을 호출하기에 탈출조건이 필요
콜백 함수
- 어떤 일을 반복 수행
- repeat()
13. 스코프
- 유효범위
- 식별자가 유효한 범위
- 네임스페이스
전역 스코프 - 코드의 가장 밖의 영역
지역 스코프 - 지역변수가 위치하는 공간 지역변수는 지역 스코프와 그 하위 스코프까지 영향을 미친다
모든 스코프는 하나의 계층적 구조로 연결
728x90