문제

  • 값에 50을 곱하고 6을 더한 값을 반환한다.
  • 입력된 값이 문자열이라면 'Error'를 반환한다.

풀이 01

function multipleAndSum(x) {
  if (typeof x === 'number') {
    return x * 50 + 6;
  } else {
    return 'Error';
  }
}

multipleAndSum('');          // Error
multipleAndSum(0);           // 6
multipleAndSum(1);           // 56
multipleAndSum(2);           // 106
multipleAndSum('Codewars');  // Error
  • typeof 연산자: 변수 또는 표현식의 타입을 반환한다.

풀이 02

function multipleAndSum(x) {
  return typeof x === 'number' ? x * 50 + 6 : 'Error';
}

multipleAndSum('');          // Error
multipleAndSum(0);           // 6
multipleAndSum(1);           // 56
multipleAndSum(2);           // 106
multipleAndSum('Codewars');  // Error

풀이 03

function multipleAndSum(x) {
  let result = x * 50 + 6;

  if (isNaN(x) || x === '') {
    return 'Error';
  } else {
    return result;
  }
}

multipleAndSum('');          // Error
multipleAndSum(0);           // 6
multipleAndSum(1);           // 56
multipleAndSum(2);           // 106
multipleAndSum('Codewars');  // Error
  • isNaN(): 값이 숫자인지를 확인한다. (Not a Number)