簡體   English   中英

科學計數法在表格中顯示為十進制

[英]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.

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