인코딩의 Decoding

반응형

안녕하세요 오늘은 함수를 정의할때 매개변수의 기본 값을 설정하여 결과값이 NaN으로 나오는 것을 방지하는 법을 알아보겠습니다.

기본 매개변수 값 주는 방법(매개변수2에 기본값 부여)
function 함수이름(매개변수1,매개변수2=부여할 값) {
return ~~;
}

예시)

function plus(a,b=1){
return a+b;
}

console.log(3,4) // 결과값 7
console.log(3) // 결과값 4
만약 기본값을 주지 않는 다면 두번째 매개변수 값이 undefined로 들어가게 되고 3+undefined의 값인 NaN이 출력됩니다.(NaN - Not a Number)

+
예전 방식
function plus(a,b) {
b = typeof b !== 'undefined' ? b : 1 ;
return a + b;
}

++
함수에서 정의된 매개변수 보다 많은 매개변수가 들어오면 값을 무시하고 적게 들어오면 기본적으로는 undefined 값을 부여한다.

예시)
function multiply(a,b) {
return a*b;
}

console.log(multiply(1)); // 결과값 NaN( 1*undefined)

console.log(multiply(1,2,3)); // 결과값 2 ( 1*2) 세번째 매개 변수 3 무시

감사합니다!

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band