我需要知道如何在数组中搜索一些文字文本并将其用作是否继续的条件。
原因如下: 每次我执行一个函数时,我都会将它所作用的属性的 ID 推送到一个数组中。我需要我的函数来检查该 ID 是否已经在数组中,如果是,则将其删除并执行我的其他函数(相反)。
这是一个示例数组:
var myArray = new Array();
myArray.push([1.000,1.000,"test1"]);
myArray.push([2.000,2.000,"test2"]);
myArray.push([3.000,3.000,"test3"]);
我知道 Grep 函数可以搜索,但如果它找到某些东西,我无法让它评估 true 或 false。
这是我对搜索评估的理想使用。
function searcher(id){
if(myArray.grep(id);){
oppositeFunction(id);
}else{
function(id);
}
}
最佳答案
Grep 不是标准的 javascript 数组方法。您是否正在使用已将此方法添加到数组的 javascript 库?如果是这样,您可能想看看它的实现。由于您将数组插入数组,因此它需要能够搜索数组的每个元素的元素,而不是搜索数组本身的 id。做你想做的事情的功能是:
function superContains(aray,id)
{
var contains = false;
for (var i=0, len = aray.length; !contains && i < len; ++i)
{
var elem = aray[i];
if (elem.constructor && elem.constructor == Array)
{
contains = superContains(elem,id);
}
else
{
contains = elem == id; // or elem.match(id)
}
}
return contains;
}
关于javascript - 在 Javascript 数组中搜索 Regex,如果找到则返回 True/False (0/1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/366262/