如何在JSON响应中使用toFixed

时间:2015-10-24 18:43:04

标签: jquery json

我在尝试使用toFixed来舍入来自我的json响应的数字时遇到了麻烦。我尝试过多种东西,但没有骰子。这是我使用的代码:

var jsonData = '[{"rank":"9.8776580879","content":"Alon","UID":"5"},{"rank":"6.8787564934","content":"Tala","UID":"6"}]';

$.ajax({
url: '/echo/json/',
type: 'POST',
data: {
    json: jsonData
},
success: function (response) {
    var trHTML = '';
    $.each(response, function (i, item) {
        trHTML += '<tr><td>' + item.rank.toFixed(2) + '</td><td>' + item.content + '</td><td>' + item.UID + '</td></tr>';
    });
    $('#records_table').append(trHTML);
}

});

<table id="records_table" border='1'>
<tr>
    <th>Rank</th>
    <th>Content</th>
    <th>UID</th>
</tr>

你们/女孩们可以看看JS Fiddle,让我知道我错过了什么:

https://jsfiddle.net/joseph_a_garcia/tqyn3/1175/

非常感谢

2 个答案:

答案 0 :(得分:2)

试试这个:

parseFloat(item.rank).toFixed(2)

https://jsfiddle.net/4tnpr5qq/

答案 1 :(得分:1)

需要将字符串转换为数字,然后在数字上使用Number.prototype.toFixed()

由于引号

"9.4456"之类的字符串不是数字
(+item.rank).toFixed(2)

DEMO