function solution(s) {
if (Number(s) % 1 === 0) {
return true;
} else {
return false;
}
}
처음 이렇게 코드를 작성했더니 30개 중에서 5개가 틀렸다고 나왔다
function solution(s) {
if (s.length === 4 || s.length === 6) {
if (!isNaN(s)) {
return true;
}
}
return false;
}
문자열 길이를 안넣어서 추가하고,
isNaN으로 s를 숫자로 변경했을 때 NaN값이 나오지 않으면 false로 나오도록 수정했더니 1개가 틀린다고 나온다,,
function solution(s) {
if (s.length === 4 || s.length === 6) {
if (/^[0-9]+$/.test(s)) {
return true;
}
}
return false;
}
정규식으로 변경했더니 된다고 나온다..
하나 안되는게 뭔지 너무 궁금해서 튜터님께 여쭤봤더니 16진수때문이라고 하는데..
만약 s가 '0x12' 이면 16진수로 18을 나타낸다고 한다 ㅎㅎ
어쨋든 x는 문자이니 false를 return 해야하는데 16진수까지 생각을 해서 true를 return했다니
너무 어렵다..