2012-08-09 40 views
-3

考虑以下数组...如何通过二维数组排序在javascript

 '0' ... 
     'item_id' ... 
     'parent_id' => "none" 
     'depth' => "0" 
     'left' => "1" 
     'right' => "30" 
    '1' ... 
     'item_id' => "1" 
     'parent_id' ... 
     'depth' => "1" 
     'left' => "2" 
     'right' => "7" 
    '2' ... 
     'item_id' => "784657484" 
     'parent_id' => "1" 
     'depth' => "2" 
     'left' => "3" 
     'right' => "4" 
    '3' ... 
     'item_id' => "3" 
     'parent_id' => "1" 
     'depth' => "2" 
     'left' => "5" 
     'right' => "6" 

什么是在JavaScript中摘掉item_idparent_id是空的,放入另一个数组的最佳方式。

+1

你的问题被标记与JavaScript,但数据结构表明你是不是JavaScript的。你能否用正确的javascript写数据,以便我们知道如何解决数据问题? – jfriend00 2012-08-09 03:27:37

回答

2

因为你的数据是伪代码,而不是实际的JavaScript,我猜这是一个对象数组(我问你澄清,但没有收到任何答复)。所以,按照这种猜测该代码将创建item_id值的数组时parent_id缺失或"none"

var empties = []; 
for (var i = 0; i < data.length; i++) { 
    if (!data[i].parent_id || data[i].parent_id === "none") { 
     empties.push(data[i].item_id); 
    } 
} 
+0

值得一提的是,您假设数据是一个对象数组,而不是“二维数组”。 – bfavaretto 2012-08-09 03:35:46

+0

@bfavaretto - 是的,我猜数据是一个对象数组。前一段时间,我询问了OP,但没有澄清。 – jfriend00 2012-08-09 03:37:54