我希望能够传递一个数组(甚至是一个jQuery对象数组)并根据单个数据成员进行简单的搜索。在jQuery中高效搜索
它需要一个数组来搜索数据成员的字符串和要搜索的值。
这显然很容易写出自己,但我很好奇,如果jQuery有内置任何东西来做到这一点?
谢谢!
我希望能够传递一个数组(甚至是一个jQuery对象数组)并根据单个数据成员进行简单的搜索。在jQuery中高效搜索
它需要一个数组来搜索数据成员的字符串和要搜索的值。
这显然很容易写出自己,但我很好奇,如果jQuery有内置任何东西来做到这一点?
谢谢!
var arr = [
{key1 : 'value 1-1', key2 : 'value 2-1'},
{key1 : 'value 1-2', key2NOT : 'value 2-2'},
{key1 : 'value 1-3', key2 : 'value 2-3'},
{key1 : 'value 1-4', key2NOT : 'value 2-4'}
],
data_member = 'key2',
output = {};
$.each(arr, function (index, obj) {
if (data_member in obj) {
output[index] = obj[data_member];
}
});
这里是一个的jsfiddle:http://jsfiddle.net/jasper/PupuZ/
这是一种方法。你为什么认为这是最高效的(因为这就是问题所在)? –
这正是我目前使用的。也很高兴通过一个比较运算符或其他东西。看来我的目的足够有效。一个基本的搜索。 – bobber205
这取决于你所说的 “即使jQuery的对象的数组” 的意思。 jquery当然有一个搜索数组的方法,jQuery.inArray(),但你必须给它一个基元数组,并搜索它以获得特定的值。 – Sinetheta
你会如何写它? –