var chnNumChar = { 零: 0, 一: 1, 二: 2, 三: 3, 四: 4, 五: 5, 六: 6, 七: 7, 八: 8, 九: 9 }; var chnNameValue = { 十: { value: 10, secUnit: false }, 百: { value: 100, secUnit: false }, 千: { value: 1000, secUnit: false }, 万: { value: 10000, secUnit: true }, 亿: { value: 100000000, secUnit: true } } var speChar = { 十: 10, 十一: 11, 十二: 12, 十三: 13, 十四: 14, 十五: 15, 十六: 16, 十七: 17, 十八: 18, 十九: 19 }; function ChineseToNumber(chnStr) { try { var speNum = speChar[chnStr]; if (speNum != undefined) { return speNum; } var rtn = 0; var section = 0; var number = 0; var secUnit = false; var str = chnStr.split(''); for (var i = 0; i < str.length; i++) { var num = chnNumChar[str[i]]; if (typeof num !== 'undefined') { number = num; if (i === str.length - 1) { section += number; } } else { var unit = chnNameValue[str[i]].value; secUnit = chnNameValue[str[i]].secUnit; if (secUnit) { section = (section + number) * unit; rtn += section; section = 0; } else { section += (number * unit); } number = 0; } } return rtn + section; } catch (e) { return 0; } }