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;
}
ex) "ABCD"[0] // "A"
ex) "ABCD"[3] // "D"
ex) "ABCD"[4] // undefined
if(1 > undefined){
console.log("참");
}else{
console.log("거짓");
}
truthy는 값이 있다면 해당
falsy는 undefined,null,''등등
"false"와 "true"는 스트링이므로 값이있는거이셔 truthy한값.
최근 이거로 문제 삼아진적이 있어 적어놈