본문 바로가기
Frontend/JavaScript

[ 자바스크립트(JavaScript) ] default parameter에 falsy value를 넘겨주면 어떻게 될까?

by YWTechIT 2023. 2. 23.
728x90

📍 default parameter에 falsy value를 넘겨주면 어떻게 될까?

ES6 feature 중 하나인 default parameter는 function parameter에 값이 전달되지 않거나 undefined인 경우 default parameter를 기본값으로 사용하는 방법이다.

728x90

어느날 .env와 함께 default parameter를 사용하다 undefined를 제외한 falsy한 값(false, 0, '', null, etc..)을 넘겨주면 default parameter가 적용이 안 된다는 점을 찾았고, 블로그에 남기자는 생각을 했었다.

그럼, 예시를 살펴보자.

function greet(name = "ted") {
  console.log(`Hello, ${name}!`);
}

greet(); // Output: "Hello, ted!"
greet(undefined)  // Output: "Hello, ted!"
greet("Jenny"); // Output: "Hello, Jenny!"

greet(0); // "Hello, 0!" 
greet(null); // "Hello, null!" 
greet(''); //  "Hello, !" 
greet(false); // "Hello, false!"

Reference

  1. ECMAScript6 - Default Parameter Values
  2. MDN - Passing undefined vs other falsy values
  3. MDN - falsy
반응형

댓글