在 javascript 中获取简短的关注者计数而不四舍五入
Get short followers count without rounding up in javascript
我想缩短精确的粉丝数量,并像社交平台一样以漂亮的方式展示。问题是我的代码正在四舍五入最后一位数字。
function getShortFollowers(num){
function intlFormat(num){
return new Intl.NumberFormat().format(Math.round(num*10)/10);
}
if(num >= 1000000)
return intlFormat(num/1000000)+'M';
if(num >= 1000)
return intlFormat(num/1000)+'k';
return intlFormat(num);
}
// Result
console.log(getShortFollowers(28551) // output: 28.6
// Wanted result
console.log(getShortFollowers(28551) // output: 28.5
如果我将 Math.round 除以 100 而不是 10,我会阻止四舍五入但得到两位小数,这是不需要的。
这样试试。
function getShortFollowers(num){
function intlFormat(num){
return new Intl.NumberFormat().format(Math.floor(num*10)/10);
}
if(num >= 1000000)
return intlFormat(num/1000000)+'M';
if(num >= 1000)
return intlFormat(num/1000)+'k';
return intlFormat(num);
}
// Result
console.log(getShortFollowers(28551)) // output: 28.5k
我想缩短精确的粉丝数量,并像社交平台一样以漂亮的方式展示。问题是我的代码正在四舍五入最后一位数字。
function getShortFollowers(num){
function intlFormat(num){
return new Intl.NumberFormat().format(Math.round(num*10)/10);
}
if(num >= 1000000)
return intlFormat(num/1000000)+'M';
if(num >= 1000)
return intlFormat(num/1000)+'k';
return intlFormat(num);
}
// Result
console.log(getShortFollowers(28551) // output: 28.6
// Wanted result
console.log(getShortFollowers(28551) // output: 28.5
如果我将 Math.round 除以 100 而不是 10,我会阻止四舍五入但得到两位小数,这是不需要的。
这样试试。
function getShortFollowers(num){
function intlFormat(num){
return new Intl.NumberFormat().format(Math.floor(num*10)/10);
}
if(num >= 1000000)
return intlFormat(num/1000000)+'M';
if(num >= 1000)
return intlFormat(num/1000)+'k';
return intlFormat(num);
}
// Result
console.log(getShortFollowers(28551)) // output: 28.5k