我的my(javascript)API出现问题。当我使用coinmarketcap API(https://api.coinmarketcap.com/v1/ticker)时。至于" max_supply"对于比特币,它给了我" 16865112.0"在文本中。这是个问题。我想自动将逗号添加到像16,865,112.0这样的数字中,通常我使用toLocaleString()
但是它被标记为文本并且它不起作用。
$.get("https://api.coinmarketcap.com/v1/ticker/", function(data, status) {
for (var i = 0; i < data.length - 1; i++) {
if (data[i].id == "bitcoin") {
$("#total_supply").html(data[i].total_supply.toLocaleString());
}
}
});
有什么建议吗?
答案 0 :(得分:2)
你仍然可以这样做,只需先将字符串转换为数字。
var value = "16865112.0";
value = +value; // convert to number
var fV = Number(value).toLocaleString();
console.log(fV);
答案 1 :(得分:2)
你在String上调用Number.toLocaleString。您需要通过调用parseInt或Number()构造函数将其转换为Number(您也可以更改当前的区域设置)。
$.get("https://api.coinmarketcap.com/v1/ticker/", function(data, status) {
for (var i = 0; i < data.length - 1; i++) {
if (data[i].id == "bitcoin") {
$("#total_supply").html(Number(data[i].total_supply).toLocaleString('en-US'));
}
}
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="total_supply"></div>
&#13;