[英]Javascript array search
什么是搜索javascript数组的最佳方法? 所有项目都是字符串。
它只是使用lastIndexOf吗? 像这样:
var list= [];
list.push("one");
list.push("two");
list.push("three");
if(list.lastIndexOf(someString) != -1)
{
alert("This is already present in list");
return;
}
对于较旧的浏览器支持,您仍应使用循环:
function inArray(arrToSearch, value) {
for (var i=0; i < arrToSearch.length; i++) {
if (arrToSearch[i] === value) {
return true;
}
}
return false;
};
你可以试试javascript find
的build in array方法。 这是解决问题的最简单方法。 这是代码:
var list = [], input = "two"; list.push("one"); list.push("two"); list.push("three"); function match(element){ return element == input; } if(list.find(match)){ console.log('Match found'); }
var arr = ["one","two","three"];
Array.prototype.find = function(val){
for(var i = 0; i < this.length; i++) {
if(this[i] === val){
alert("found");
return;
}
}
alert("not found");
}
arr.find("two");
应该适用于大多数旧版浏览器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.