JavaScript 中的数字和操作数转文字
问题
我们需要编写一个 JavaScript 函数,用于输入一个数学运算符字符串,并返回其文字表达形式。
示例
代码如下 −
const str = '5 - 8'; const convertToWords = (str = '') => { const o = { "+" : "Plus", "-" : "Minus", "*" : "Times", "/" : "Divided By", "**" : "To The Power Of", "=" : "Equals", "!=" : "Does Not Equal", } const n = { 1 : "One", 2 : "Two", 3 : "Three", 4 : "Four", 5 : "Five", 6 : "Six", 7 : "Seven", 8 : "Eight", 9 : "Nine", 10 : "Ten", } let t = str.split(' ') let y = '' let c = 0 for (const [key, value] of Object.entries(o)) { if(key !== t[1]) c++; } if(c === Object.keys(o).length) return "That\'s not an operator!" for (const [key, value] of Object.entries(n)) { if(key === t[0]) y += `${value} ` } for (const [key, value] of Object.entries(o)) { if(key === t[1]) y += `${value}` } for (const [key, value] of Object.entries(n)) { if(key === t[2]) y += ` ${value}` } return y; } console.log(convertToWords(str));
输出
Five Minus Eight
广告