multipleAndSum.js (8kyu 91)
Codewars 알고리즘 풀이
Problem
- Make a function that returns the value multiplied 50 and increased by 6.
- 값에 50을 곱하고 6을 더한 값을 반환한다.
- If the value entered is a string it should return ‘Error’.
- 입력된 값이 문자열이라면 ‘Error’를 반환한다.
Solution 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
연산자변수 또는 표현식의 타입을 반환한다.
Solution 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
Solution 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)