웹 개발 메모장
[자바스크립트] 기본 매개변수 본문
기본 매개변수
다음과 같은 함수가 있다고 합시다.
1 2 3 | function test(a, b, c){ alert(a+', '+b+', '+c); } | cs |
일반적으로 다음과 같이 호출합니다.
1 | test('a','b','c'); | cs |
결과는 예상한대로 a, b, c 가 출력됩니다.
이번엔 인자를 두 개만 주고 호출해보겠습니다.
1 | test('a','b'); | cs |
에러가 나지 않고 변수 c 에는 undefined 가 저장되는 것을 알 수 있습니다.
이럴 때 함수의 매개변수가 전달되지 않는 경우 매개변수를 초기화 해줄 수 있습니다.
undefined는 조건에서 false 를 의미한다는 것을 이용합니다.
1 2 3 4 5 6 7 8 9 10 | function test(a, b, c){ if(!a) a = 'A'; if(!b) b = 'B'; if(!c) c = 'C'; alert(a+', '+b+', '+c); } | cs |
이번에도 인자를 두 개만 주고 호출해보겠습니다.
1 | test('a','b'); | cs |
이번에는 매개변수가 정의되지 않은 경우 각각 초기화를 시켜줬기 대문에 'C' 가 들어간 것을 볼 수 있습니다.
위의 함수를 짧은 조건문으로 표현할 수도 있습니다. (많이 사용하는 형태로 매우 중요한 형태입니다.)
1 2 3 4 5 6 7 | function test(a, b, c){ a = a || 'A'; b = b || 'B'; c = c || 'C'; alert(a+', '+b+', '+c); } | cs |
ECMAScript 6 이상 부터는 기본 매개변수를 쉽게 만들 수 있는 문법을 제공하는데 다음과 같이 사용합니다.
1 2 3 | function test(a='A', b='B', c='C'){ alert(a+', '+b+', '+c); } | cs |
'옛날.. > 자바스크립트' 카테고리의 다른 글
[자바스크립트] in 키워드 / with 키워드 (0) | 2018.01.03 |
---|---|
[자바스크립트] 객체 란? (0) | 2018.01.03 |
[자바스크립트] 형변환 Number() 와 parseInt() 의 차이 (1) | 2018.01.03 |
[자바스크립트] Infinity, NaN (0) | 2018.01.03 |
[자바스크립트] 문자열을 코드로 실행시키는 eval() 함수 (0) | 2018.01.03 |
Comments