簡體   English   中英

從小數點后三位開始舍入

[英]Cut from the third decimal without rounding

我知道問題的質量很低,但是我現在有點困惑。 這是我想做的事情。

100000 => 100.000
9997080000 => 9997080.000 

我想從小數點后三位開始舍入而不舍入。 我怎樣才能做到這一點? 我使用了toFixed()但我要做的只是從小數點后三位開始。 我想我現在很復雜。 這很簡單。 請讓我知道。 謝謝

據我了解,這就是您想要的:

 var number = "9002764000"; var result = number.slice(0, -3) +"."+ number.slice(-3); console.log(result); 

這將添加一個. 最后三位數字之后,即9002764000 > 9002764.000

https://jsfiddle.net/5yqhr7mo/

希望能幫助到你!

聽起來您想要顯示一個值。 如果是這樣,則要將數字轉換為字符串(因為數字本質上在小數點右邊沒有任何特定的數字位數)。 然后,您可以輕松插入. 使用substringsubstr在最后三位數字之前:

 function formatForDisplay(num) { var str = String(num); return str.substring(0, str.length - 3) + "." + str.substr(-3); } function test(num) { console.log(num, "=>", formatForDisplay(num)); } test(100000); test(9997080000); 

另外,您可以使用String#replace並添加一個點。

 var number = 9002764000; console.log(Math.floor(number).toString().replace(/(?=...$)/, '.')); 

關於什么 :

 function formatNumber(num){ num=num/1000; return num.toFixed(3); } console.log(formatNumber(9997080000)); console.log(formatNumber(100000000)); 

如果使用整數,它將返回您期望的結果

Math.floor()將舍入到四舍五入,從而Math.floor()小數點右邊的所有內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM