2016-04-13 26 views
-2

我有一個數字的列表,按百分比是這樣的:Javascript功能來取代數的小數

100.0% 
84.0% 
100.0% 
90.0% 
73.0% 

等等...

沒有像十進制:73.4%,僅整數。

我在尋找那些數字轉換爲小數,如JavaScript代碼:

10.0 
8.4 
10.0 
9.0 
7.3 

和卸下%符號。我怎樣才能做到這一點?

非常感謝您的寶貴時間,

+1

將您的數字除以10? – DBS

+2

'parseFloat('100.0%')/ 10' –

+0

這就是答案,不錯的一個@JamieBarker – JordanHendrix

回答

1

隨着parseFloat和除以10:

document.write(parseFloat('100.0%')/10);

+0

你好。感謝您的回答。我可以問你,我怎樣才能使它在這樣的表格中生成的列表上工作? https://jsfiddle.net/wxn1e6L1/ –

+0

我建議在生成表之前進行更改。 –

1

怎麼樣(parseFloat('100.0%')/10).toFixed(1)

例子:

document.write((parseFloat('100.0%')/10).toFixed(1))

+0

謝謝,我可以問你,我怎樣才能讓parseFloat()工作在已經在類似這樣的表中生成的列表中? jsfiddle.net/wxn1e6L1 –

0

使用parseInt()parseFloat()解析數。然後除以10,並使用.toFixed(1)固定小數位1

var perc = ['100.0%', 
 
'84.0%', 
 
'100.0%', 
 
'90.0%', 
 
'73.0%']; 
 

 
for(i=0;i<perc.length;i++) { 
 
    document.getElementById('demo').innerHTML += (parseInt(perc[i])/10).toFixed(1) + ', '; 
 
}
<p id="demo"></p>

+0

謝謝!我可以問你,我怎樣才能使它在這樣的表格中生成的列表上工作? jsfiddle.net/wxn1e6L1 –

+0

選中此:http://jsfiddle.net/wxn1e6L1/1/ – Munawir

0

我會做這種方式...

var test = '73.0%'; 
var subst = test.substring(0, test.length - 1); 
var value = parseFloat(subst)/10; 
console.log(value); 

你簡單地丟棄%符號,然後將該字符串解析爲浮點數,然後除以10.

+0

嗨@ManoDestra,謝謝!我可以問你,我怎樣才能使它在這樣的表格中生成的列表上工作? jsfiddle.net/wxn1e6L1 –

+0

你有沒有在你的Javascript中的數組,或者你必須解析DOM?我希望這不是後者。那將是錯誤的。您應該在此處使用此方法在將數據放入HTML之前對其進行格式化。或者直接在服務器端進行操作,並首先提供正確的響應。 換句話說,你的原始%字符串是什麼數據結構? – ManoDestra

+0

不幸的是,它是最新的。這只是一個造型問題;我試圖用修正後的值打印該表格。我正在考慮替換() –