반응형
자바스크립트에서 함수의 매개변수는 기본값이 undefined 였지만
ES6에서 이 함수의 매개변수 기본값을 설정해 줄 수 있다.
구문은 다음과 같다.
▷구문
function fnName(param1 = defaultValue1, ..., paramN = defaultValueN) { ... }
예제를 통해 더 쉽게 접근해보자.
1. 일반적인 함수 매개변수의 기본값
function mine(a){
return a;
}
console.log(mine()); // undefined
위 예제를 보면 함수의 매개변수는 기본적으로 undefined값을 가진다.
그래서 매개변수를 넣지 않고 함수를 그냥 실행해 버리면 undefined를 그대로 반환하는것이다.
그래서 이를 방지하기 위해 매개변수에 기본값을 사용하여 미리 방지할 수 있다.
2. 함수 매개변수의 기본값 설정
function mine(a = 'it-record'){
return a;
}
console.log(mine()); // it-record
1번 예제와 동일하게 호출을 하였지만 기본 매개변수의 기본값을 주입해놓았기 때문에 기본값이 출력되는 것을 볼 수 있다.
함수 매개변수 기본값을 사용하기에 앞서 하나 주의할 점은 매개변수가 undefined 일 때만 작동한다는 것이다.
이게 의미하는바는 script에서는 false로 간주하는 것들이 있는데 (모른다면 아래 링크를 통해 확인해보자.)
https://mine-it-record.tistory.com/163
false로 간주되는 것들이 매개변수로 들어가게되면 기본값이 작동을 안하고 그 값들을 그대로 출력해준다.
function mine(a = 'it-record'){
return a;
}
console.log(mine(undefined)); // it-record
console.log(mine(0)); // 0
console.log(mine(null)); // null
console.log(mine('')); // ''
console.log(mine(NaN)); // NaN
일반 기본적으로 위와 같이 사용하는 것이고 좀 더 상세하게 들어가면 많은 내용이 존재한다.
상세한 내용은 아래 링크를 통해 배워보자.
참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Functions/Default_parameters
반응형
댓글