我在jQuery中搜索数组,
var arr = ["mango","banana","jackfriut","apple","google"];
var removeItem = "google"; //works fine
var removeItem = "ogle"; //fails
arr = $.grep(arr, function(value) {
return value != removeItem;
});
alert(arr)
当我通过"google"
时,它的工作正常。
请告诉我,当我仅传递"ogle"
等内容时,它应该可以正常工作。
它就像通配符一样。
答案 0 :(得分:2)
您可以根据条件使用indexOf
var arr = ["mango","banana","jackfriut","apple","google"];
var removeItem = "ogle"; //fails
arr = $.grep(arr, function(value) {
if(value.indexOf(removeItem) == -1)
return value;
});
alert(arr)
希望有所帮助:)
答案 1 :(得分:0)
您可以使用内置$.inArray
功能的jQUery。
var arr = ["mango","banana","jackfriut","apple","google"];
function inArray() {
if($.inArray(value, arrayName) !== -1) {
alert("Value is in array");
} else {
alert("Value is not in array");
}
}
然后,您可以调用函数传递您要查找的值:
inArray("google");
当然,您选择在函数中返回的逻辑取决于您,但这是检查数组中值的最佳方法。