我有一个带数字的表,但它们存储为字符串,因此我尝试使用函数parseFloat将其转换为整数表。但是,无论我怎么做for循环,它都给了我一张空白表。我可以解析行,它会给我一个int。我也可以解析单个int,但似乎无法解析行或表。这是我到目前为止所拥有的。这只是试图转换一行。我为整个表尝试了两个for循环,但这也没有用。谢谢。
var c =[];
var entries = $.parseJSON('<?php print(json_encode($try, true)); ?>');
for (var j = 0; j < 12; j++)
{
for (var i = 0; i < 7; i++)
{
c [j][i] = parseFloat(entries[j][i]);
}
}
alert(c);
这里是条目json编码[[“ - 248”,“ - 163”,“ - 455”,“ - 1413”,“ - 1294”,“ - 1296”,“ - 1089”],[“ - 172 “ ” - 219“, ” - 1186“, ” - 1368“, ” - 1480“, ” - 1079“, ” - 845“],[ ” - 98“, ” - 198“, ” - 703“,” -996" , “ - 1100”, “ - 585”, “ - 616”],[ “ - 116”, “ - 241”, “ - 498”, “ - 642”, “ - 704”, “ - 354” , “ - 430”],[ “ - 137”, “ - 117”, “ - 264”, “ - 525”, “ - 533”, “ - 269”, “ - 476”],[ “ - 12”, “87”, “ - 257”, “ - 463”, “ - 551”, “ - 302”, “ - 535”],[ “170”, “61”, “ - 250”, “ - 472”,” -659" , “ - 220”, “ - 605”],[ “159”, “96”, “ - 234”, “ - 513”, “ - 617”, “ - 196”, “ - 710”], [ “185”, “117”, “ - 272”, “ - 521”, “ - 610”, “ - 258”, “ - 798”],[ “208”, “95”, “ - 234”,” -534" , “ - 696”, “ - 280”, “ - 854”],[ “192”, “151”, “ - 188”, “ - 641”, “ - 739”, “ - 279”,” -957 “],[” 249" , “223”, “ - 235”, “ - 684”, “ - 763”, “ - 339”, “ - 978”]]
答案 0 :(得分:3)
您必须将数组的第二维初始化为数组。就目前而言,c[j]
只是一个值,因此您无法对其进行c[j][i]
。您的第一个for
循环中也存在错误,您需要比较j
的值,而不是i
。请参阅此固定代码:
var c = [];
var entries = $.parseJSON('<?php print(json_encode($try, true)); ?>');
for (var j = 0; j < 12; j++)
{
c[j] = [];
for (var i = 0; i < 7; i++)
{
c [j][i] = parseFloat(entries[j][i]);
}
}
alert(c);
答案 1 :(得分:0)
在您的第一个循环for (var j = 0; i < 12; j++)
中,您使用i
进行迭代,但未定义且应为j
而不是i
var c =[];
var entries = $.parseJSON('<?php print(json_encode($try, true)); ?>');
for (var j = 0; j < entries.length ; j++)
{
c[j] = [];
for (var i = 0; i < entries[i].length ; i++)
{
c [j][i] = parseFloat(entries[j][i]);
}
}