【发布时间】:2020-07-27 04:27:30
【问题描述】:
我做了一个简单的程序将数字转换为单词。当我想转换负数时遇到问题。
我想在数组 'satuan' 中找到索引,以便稍后我添加单词 'minus'
在我的代码中,顺便说一句,我使用印度尼西亚语。
js代码:
// i have array like this
var satuan = ['', 'satu', 'dua', 'tiga', 'empat', 'lima', 'enam', 'tujuh', 'delapan', 'sembilan'];
// and my function to convert minus number like this
function convert_minesPuluhan(num) {
var c = Math.abs(num) + Math.abs(num);
if (num < 0 && num > -10) {
return satuan[num + c];
}
}
但是当我使用 console.log(num + c) 时。结果是(例如 num 值为 -1)-12。
但我想要的是 -1 + 1 + 1 = 1
// so i want like this
satuan[1];
如何解决?
【问题讨论】:
-
当我将
console.log(convert_minesPuluhan(-1));添加到您的脚本时,输出为satu(我认为这是您想要的)... -
2 个绝对值加起来怎么会小于
0?只需使用 Array 表示法来获取 Array 元素。如果你只是想让消极变成积极if(num < 0){satuan[Math.abs(-1)]. -
谁能解释一下为什么-ve number 需要这样转换?简单地将它与 -1 相乘应该可以解决问题,对吗?还是有什么目的。
-
function convert_minesPuluhan(num){ let n = num < 0 ? Math.abs(num) : num; return satuan[n]; }
标签: javascript numbers word