试图通过一个多暗的数组并将字符串转换为浮点数

时间:2013-11-13 03:43:24

标签: javascript

我正在尝试通过javascript中的多维数组来将所有字符串更改为浮点数。我尝试使用.length函数,但我认为它不起作用。有没有办法可以使用这个,还是我必须在i和j的限制内进行硬编码?多维数组采用JSON格式。

var entries = $.parseJSON('<?php print(json_encode($updatedata, true)); ?>');

for (var i = 0; entries.length; i++)
{
    for (var j = 0; entries[i].length; j++)
        {
            entries[i][j] = parseFloat(entries[i][j])
        }
}

3 个答案:

答案 0 :(得分:1)

实际上,这是基于Nick的(我不能在评论中明显发布代码):

var entries = $.parseJSON('<?php print(json_encode($updatedata, true)); ?>');
var entriesArray = array();

for(var obj in entries) {
    for(var prop in obj) {
        if (!entriesArray[obj]) { entriesArray[obj] = []; }

        entriesArray[obj][prop] = parseFloat(obj[prop]);
    }
}
console.log(entriesArray);

答案 1 :(得分:0)

我是新手JSer,但我认为$ .parseJSON会返回一个对象,但它们没有长度。要遍历对象的所有键,请使用for in语法。这可能有用......

var entries = $.parseJSON('<?php print(json_encode($updatedata, true)); ?>');
var entriesArray = array();

for(var obj in entries) {
    for(var prop in obj) {
        entriesArray[obj] = parseFloat(prop);
}
console.log(entriesArray);

答案 2 :(得分:0)

我其实认为我弄明白了。我更改了具有条目[i] .length的部分,并将其转换为单独的数组,并在其上使用了.length函数。我不知道为什么会有所作为。谢谢你的帮助。

var entries = $.parseJSON('<?php print(json_encode($updatedata, true)); ?>');
**var entriesArray = entries[0];**

for(var i = 0; i < entries.length; i++) 
{

    for(var j = 0; j < **entriesArray.length;** j++)
    {
        entries[i][j]= parseFloat(entries[i][j]);

    }
}