Javascript [jQuery]按键和值过滤数组

时间:2011-08-22 10:35:47

标签: javascript jquery arrays filtering

如果某个键符合某个值,我需要过滤一个数组,例如:

data = theArray;
var theColumn = "thc012";
var theVal = 4;
data = $.filter(data, theColumn, theVal );

然后结果将是匹配theColumn = theVal ;

的所有数组项

我已经在使用jQuery库,所以如果有任何jQuery函数帮助,请使用它们。

由于

3 个答案:

答案 0 :(得分:2)

Javascript对象是键值对。你可以使用它们。 像这样:

var data = {
    "cars": ["Honda", "Toyota", "Subaru"],
    "planes": ["Boeing", "Airbus", "Mig"]
};
var key = "cars";
data[key]; // All cars
key = "planes";
data[key]; // All planes

答案 1 :(得分:1)

我认为您正在寻找grep方法:jQuery.grep

然后只为它提供一个检查theColumn = theKey;

的函数

答案 2 :(得分:0)

如果我已正确理解你的问题,那就应该这样做

 $.each(data,function(row,key){ 
    if(key != theKey && theColumn != theColumn){
        delete data[key];
    } 
 });