[자바스크립트 코딩의 기술] 6장 Tip28

MinJee Lee·2021년 6월 23일
1

JavaScript

목록 보기
6/6
post-thumbnail

👉 6장 매개변수와 return 문을 정리하라

😎 매개변수 기본값을 생성하라

온스(ounce)로 변환해야 하는 이슈를 올렸을 때

function convertWeight(weight) {
  return weight / 2.2;
}

🙌 첫번째 방법

// convertWeight 는 부동의 소수점 연산 때문에 예상 값이 안나온다.
function convertWeight(weight, ounces, roundTo) {
  const oz = ounces / 16 || 0;
  const total = weight + oz;
  const conversion = total / 2.2;
	
 //적절한 방법이 아님 사용자가 0을 넘겼을 때 roundTo 가 참인지 확인 하는 것만으로는 부족하다.
 //roundTo 가 거짓으로 처리되어 소수점 두 번때 자리 까지 반환 하기 때문이다. 
  const round = roundTo === undefined ? 2 : roundTo;

  // roundToDecimalPlace 는 반올림 헬퍼 함수 
  return roundToDecimalPlace(conversion, round);
}
  • 모든 함수 호출을 바꿀 수도 있지만, 실수 가능성이 항상 있다. 매개변수를 선택적으로 적용 할 수 있기 때문에 누락하면 값은 undefined가 된다. 그래서 패스

🤔 두번째 방법

  • 아래 코드 참조
  • roundTo는 매개변수로 아무 값도 전달 되지 않아 undeficed가 되지는 않는지 명시적으로 확인해야 한다.

🌟 매개변수 기본값은 순서가 중요하기 때문에 완변한 해결책은 아니다.

값을 전달하고 싶지 않을 경우, 매개변수에 undefined를 전달하면 함수가 매개변수 기본값을 사용한다.

하지만 null을 전달하면 설정한 기본값이 사용되지 않기 때문에 주의해야한다.

이 게시물은 자바스크립트 코딩의 기술 책을 요약한 내용입니다.

1개의 댓글

comment-user-thumbnail
2021년 6월 23일

매개변수 기본값.. 유용한 글 잘 보고 갑니다!!

답글 달기