在JavaScript中,我想定义小数位的去向。我只能在示例中展示它。
假设输入值为1234
我希望输出为123.4
。
或者,如果输入为12345
,我希望输出为123.45
。
或者,如果输入为123456
,我希望输出为123.456
。你得到了照片。
为了澄清,我只想在小数的左边有三位数。总位数未知。
那么,怎么办呢?
答案 0 :(得分:7)
var a = 5007;
// Where `1` below is the amount you want to move it.
a /= Math.pow(10, 1);
document.body.innerHTML = a; // 500.7
答案 1 :(得分:4)
var n = 1234;
var l = n.toString().length-3;
var v = n/Math.pow(10, l); // new value
3
是因为您希望前3个数字作为整数,因此基数会根据n
的大小而变化。
function moveDecimal(n) {
var l = n.toString().length-3;
var v = n/Math.pow(10, l);
return v;
}
尝试1234,12345和123456。
答案 2 :(得分:3)
123456是123.456乘以1000.这意味着你可以用小数移动小数位:
var num1 = 1234 / 10; //sets num1 to 123.4
var num2 = 12345 / 100; //sets num2 to 123.45
var num3 = 123456 / 1000; //sets num3 to 123.456
或者,如果您想以更一般的形式设置小数位数,可以使用Math.pow函数:
var num3 = 123456 / Math.pow(10, 3); //sets num3 to 123.456
答案 3 :(得分:0)
基本数学,只需将数字除以10即可向左侧移动1个十进制大小写。并乘以10来做相反的事情。
“假设输入值为1234.我希望输出为123.4”
1234/10 = 123.4
“或者,如果输入是12345,我希望输出为123.45”
12345/100 = 123.45
答案 4 :(得分:0)
计算出要将小数点向左移动的位数,并将数字乘以10除以该数字的幂:
123.456=123456/(10^3)
^
获得权力的地方。