๐ ๋ฌธ์
๋ฌธ์์ ์ซ์๊ฐ ์์ฌ์๋ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ฉด ๊ทธ ์ค ์ซ์๋ง ์ถ์ถํ์ฌ ๊ทธ ์์๋๋ก ์์ฐ์๋ฅผ ๋ง๋ ๋ค. ๋ง์ฝ "tge0a1h205er"์์ ์ซ์๋ง ์ถ์ถํ๋ฉด 0, 1, 2, 0, 5์ด๊ณ ์ด๊ฒ์ ์์ฐ์๋ฅผ ๋ง๋ค๋ฉด 1205์ด ๋๋ค.
๐ ํ์ด
๐ง๐ป๐ป ๋์ ํ์ด ๋ฐฉ๋ฒ
๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๋ค์ ๋๋ฉด์ charCodeAt() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์์คํค ์ฝ๋๊ฐ 65("A") ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ์๋ง answer ๋ณ์์ ๋์ ์ํจ๋ค.
// ๋์ ํ์ด ๋ฐฉ๋ฒ
function solution(str) {
let answer = '';
for (let x of str) {
if (x.charCodeAt() < 65) answer += x;
}
return parseInt(answer);
}
let str = 'g0en2T0s8eSoft';
console.log(solution(str));
๐จ๐ผ๐ซ ๊ฐ์ฌ๋ ํ์ด ๋ฐฉ๋ฒ
๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๋ค์ ๋๋ฉด์ isNaN() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ NaN(Not a Number)์ด ์๋ ๊ฒฝ์ฐ์๋ง answer ๋ณ์์ ๋์ ์ํจ๋ค.
// ๊ฐ์ฌ๋ ํ์ด ๋ฐฉ๋ฒ
function solution(str) {
let answer = '';
for (let x of str) {
if (!isNaN(x)) answer += x;
}
return parseInt(answer);
}
let str = 'g0en2T0s8eSoft';
console.log(solution(str));
๐ง Number.isNaN() ?
์ด๋ค ๊ฐ์ด NaN(Not a Number)์ธ์ง ํ๋ณํ๋ ๋ฉ์๋์ด๋ค.
function milliseconds(x) {
if (isNaN(x)) {
return 'Not a Number!';
}
return x * 1000;
}
console.log(milliseconds('100F'));
// expected output: "Not a Number!"
console.log(milliseconds('0.0314E+2'));
// expected output: 3140
๐ ์ฐธ๊ณ ์ฌ์ดํธ
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/isNaN
'Algorithm > ์ธํ๋ฐ(inflearn)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JavaScript/section 3] 05 - ๋ฌธ์์ด ์์ถ (0) | 2022.09.13 |
---|---|
[JavaScript/section 3] 04 - ๊ฐ์ฅ ์งง์ ๋ฌธ์๊ฑฐ๋ฆฌ (0) | 2022.09.13 |
[JavaScript/section 3] 02 - ์ ํจํ ํฐ๋ฆฐ๋๋กฌ (0) | 2022.09.08 |
[JavaScript/section 3] 01 - ํ๋ฌธ ๋ฌธ์์ด (0) | 2022.09.08 |
[JavaScript/section 2] 07 - ๋ด์ฐ๋ฆฌ (0) | 2022.09.07 |