我有一个号码,让我说我有三个号码
const num1 = 21; // output: 21
const num2 = 12345678; // output: 345678
const num3 = 1.359801885649216e+34; // output: ?? (probably 000000)
应该指出我并不真正知道e+
做什么
我需要找到这些数字中的任何一个的最后六位数(或可用数量)。
我怎样才能在Javascript中找到这些数字的最后六位数?
答案 0 :(得分:2)
您可以休息1e6
,但只能得到最接近浮点数的值,因为 Alnitak 在评论中指出。
对于最后一种情况,号码
13598018856492160349090412205441024
,最后6位是
441024
console.log([21, 12345678, 1.359801885649216e+34].map(v => v % 1e6));

答案 1 :(得分:0)
我需要找到任何一个的最后六位数(或可用数量) 这些数字。
我假设你的意思是 - 小数点前的最后6位
以最高精确度100
num = 1.359801885649216e+34;
var fnLastNDigits = ( num, N ) => num.toPrecision( 100 ).split( "." )[ 0 ].slice( -N );
console.log( fnLastNDigits( num ) );
<强>解释强>
num.toPrecision( 100 )
返回给定精度的字符串值split( "." )[0]
将值拆分为.
并返回数组的第一个值slice(-N)
获取最后N位数