13.1 核心思路
-
罗马数字
-
字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 -
正常数字都是大的在左边 小的在右边
- 特殊 小的在左边 大的在右边(右边的减去左边的数值)
- 4 IV
- 9 IX
- 罗马数字转数字
- 都操作前面的数字
- 左边大于右边 做加法
- 右边大于左边 做减法
- 特殊 小的在左边 大的在右边(右边的减去左边的数值)
13.2 代码块
var romanToInt = function (s) {
// 创建对象
var object = {
'I': 1,
'V': 5,
'X': 10,
'L': 50,
'C': 100,
'D': 500,
'M': 1000
};
// 创建结果变量
var result = 0;
// 循环
for (var i = 0; i < s.length; i++) {
// 遍历获得输入的字符串
var front = s[i], back = s[i + 1];
// 右边大于左边 做减法
if (object[back] > object[front]) {
result -= object[front];
}
// 左边大于右边 做加法
else {
result += object[front]
}
};
return result;
}