코드카타 2주차
function romanToNum(s) {
let answer = 0;
const roman = {
I: 1,
V: 5,
X: 10,
L: 50,
C: 100,
D: 500,
M: 1000,
};
for (let i = 0; i < s.length; i++) {
if (roman[s[i]] < roman[s[i + 1]]) {
// 마지막값 들어왔을때 undefined를 비교할 땐 무조건 '거짓'으로.
answer -= roman[s[i]];
} else {
answer += roman[s[i]];
}
}
return answer;
}
✅눈여겨 봐야할것들
1. 문자열도 배열처럼 뽑아서 쓸 수 있다.
ex) "ABCD"[0] // "A"
ex) "ABCD"[3] // "D"
ex) "ABCD"[4] // undefined
2. undefined는 falsy 값이다. 숫자와 비교하면 항상 거짓이다.
if(1 > undefined){
console.log("참");
}else{
console.log("거짓");
}
결론 :1보다 크든 작든 항상 "거짓"이 나온다
추가) truthy, falsy값엔 여러가지가 있다.
truthy는 값이 있다면 해당
falsy는 undefined,null,''등등
"false"와 "true"는 스트링이므로 값이있는거이셔 truthy한값.
최근 이거로 문제 삼아진적이 있어 적어놈
Author And Source
이 문제에 관하여(코드카타 2주차), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ksung1889/코드카타-2주차저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)