簡體   English   中英

將String轉換為Float(最多2個小數位)

[英]Convert String to Float up to 2 Decimal places

我有一個php變量,它在字符串數據類型中包含類似“ 1.15”的值,基本上我想將字符串值轉換為Float值。

當變量包含1.15之類的值時,它將完全轉換為float;但是,如果變量在轉換為float后具有1.10的值,則變為1.1(我希望它為1.10)

我已經嘗試了一些方法,但是無法將1.1轉換為1.10。

那么這個問題有什么解決辦法嗎?

並記住最后該變量應具有數據類型float和值1.10

電腦不是人。 1.1是將Number對象轉換為人類可讀格式的結果,因此1.10 1.10 === 1.1畢竟,將冗余數據保留為零后綴將浪費資源。

每當您想顯示變量的值時,都需要進行一些轉換,因此,將Number 1.1顯示為1.10而無需將其顯式轉換為字符串(例如toFixed() )的唯一操作是掛接至內部。

Number.prototype.toString = function(){
   return this.toFixed(2);   
}

var oneone = new Number( 1.1 );
// since implicit conversion to string is required it will show 1.10
alert( oneone );

http://jsfiddle.net/Lhxe1tu9/

這並不是最好的主意(很少與本機對象原型打交道),它僅適用於使用new Number構造函數聲明的new Number ,而不適用於數字文字。 我認為您可以進一步推動它,但是強制語言更改數字的表示形式而不是自己格式化顯示的概念很奇怪。

首次使用:

var newfloat = parseFloat(yourString).toFixed(2);

轉換為2dp

然后使用var float = parseFloat(newFloat); (因為toFixed()返回字符串)再次轉換為float。

暫無
暫無

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

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