2015-01-10 71 views

回答

9

.toFixed()你的結果轉換爲字符串
所以你需要使它回到一個數字:jsBin demo

parseFloat(num.toFixed(2)) 

或簡單地使用一元+

+num.toFixed(2) 

都將給予以下

// 15.00 ---> 15 
// 15.20 ---> 15.2 

如果你只是想擺脫.00情況下,比你可以使用.replace()

num.toFixed(2).replace('.00', ''); 

注意去字符串操作:上述內容會將您的Number轉換爲String

+0

感謝它工作!!!!!! – ashishjmeshram

+0

@anything不用客氣 –

+0

'+(num.toFixed(2))'輸入較少。 ;-) – RobG

4

作爲替代,使這個全球變化(如果你需要,當然),試試這個:

var num1 = 10.1; 
var num2 = 10; 

var tofixed = Number.prototype.toFixed; 

Number.prototype.toFixed = function(precision) 
{ 
    var num = this.valueOf(); 

    if (num % 1 === 0) 
    { 
     num = Number(num + ".0"); 
    } 

    return tofixed.call(num, precision); 
} 

console.log(num1.toFixed(2)); 
console.log(num2.toFixed(2)); 

Fiddle。這是thisthis後的混合。

相關問題