我在ajax数据中获得了成功的价值:
[["United States", "2.545454", "3.65656"],["delhi", "4.656565", "2.342342"]]
我怎样才能改变成这样:
[['United States', 2.545454, 3.65656],['delhi', 4.656565, 2.342342]]
答案 0 :(得分:2)
将数据解析为数组后,遍历数组并将字符串转换为数字
data.forEach(function(item){
item[1] = +item[1];
item[2] = +item[2];
});
您也可以在服务器上执行此操作,并将值作为数字而不是字符串
发送因为你提到json_encode
会认为是php。
您可以使用JSON_NUMERIC_CHECK
中的json_encode()
选项自动执行此操作
答案 1 :(得分:0)
您想将数字字符串更改为float。这意味着您需要解析这些值。
//for some json object called 'json'
json.stringyfloat = parseFloat(json.stringyfloat);
//for your code
var json = JSON.parse(<your input>);
for(var i = 0; i < json.length; i++)
{
json[i][1] = parseFloat(json[i][1]);
json[i][2] = parseFloat(json[i][2]);
}
虽然您可能应该做的是确保在创建数据结构时,将您想要的值设置为浮点数,浮点数。