[英]scientific notation displayed as decimal in table
我目前正在用從服務器獲取的JSON數據填充HTML表。
JSON看起來像這樣:
[
{
"field1":"someString",
"value":6e-21
},
{
"field1":"someOtherString",
"value":1e-4
}
]
但是在HTML表中,如果數字適合div,則有時會將“值”字段轉換為十進制表示法
這是展示問題的小提琴
我想在HTML表格中使用科學計數法的所有值(例如在我的JSON數據中)
將所有值轉換為字符串
var data = [{
"field1": "someString",
"value": "6e-21"
}, {
"field1": "someOtherString",
"value": "1e-4"
}];
工作提琴:-https: //jsfiddle.net/e27w2poa/4/
使用toExponential()
函數,如下所示:
data[result].value.toExponential()
從MDN :
toExponential()
方法返回一個以指數表示形式表示Number
對象的字符串。
這是完整的代碼段:
var data = [{ "field1": "someString", "value": 6e-21 }, { "field1": "someOtherString", "value": 1e-4 }]; var htmlContent = "<tbody>"; for (let result in data) { htmlContent += "<tr><td>" + data[result].field1 + "</td><td>" + data[result].value.toExponential() + "</td></tr>"; } document.getElementById('table').innerHTML += htmlContent + "</tbody>";
table, th, td { border: 1px solid black; }
<p>generated from JSON: </p> <table id="table"> <thead> <tr> <td>field1</td> <td>value</td> </tr> </thead> </table> <p>expected:</p> <table> <thead> <tr> <td>field1</td> <td>value</td> </tr> </thead> <tbody> <tr> <td>someString</td> <td>6e-21</td> </tr> <tr> <td>someOtherString</td> <td>1e-4</td> </tr> </tbody> </table>
您可以使用toExponential()
轉換回指數形式。 工作的JSFiddle https://jsfiddle.net/e27w2poa/5/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.