我有一系列记录。我想在数组的特定位置搜索字符串。但有些我怎么也做不到。请看下面的代码:
var match_index = [];
var count = 0;
var keyword1 = csvvalue[1][9].replace(/\"/g, '');
var search_text="इलाहाबाद";
$("#leng").html(csvvalue.length);
for(var i=0; i<csvvalue.length; i++){
$("#index").html("loop");
var keyword1 = csvvalue[i][9].replace(/\"/g, '');
if (search_text === keyword1)
{
match_index[count] = i;
count++;
$("#index").html("match");
}
$("#index").append("<br />" + i.toString());
}
在上面的代码中,控件不在if
语句中,尽管字符串在索引1和2的数组中可用。此外,只有i
的最后一个值正在获取打印(代码的最后一行)虽然它应该从i
开始打印0
的所有值。
我的实际要求是在整个数组中搜索特定的字符串。我已经更改了代码以更好地满足我的要求。
被修改
虽然有两个匹配的记录,但我尝试了所有的东西,但控件不在if语句中,
答案 0 :(得分:0)
您正在比较循环前设置的两个值
我想它应该更像是:
var match_index = [];
var count = 0;
var keyword1 = "";
var search_text="इलाहाबाद";
$("#leng").html(csvvalue.length);
for(var i=0; i<csvvalue.length; i++){
keyword1 = csvvalue[i].replace(/\"/g, '');
$("#index").html("loop");
if (search_text === keyword1)
{
match_index[count] = i;
count++;
$("#index").html("match");
}
$("#index").append("<br />" + i.toString());
}
或者取决于你的csvvalue数组的结构。
keyword1 = csvvalue[1][i].replace(/\"/g, '');
答案 1 :(得分:0)
如果要检查数组中的特定变量,为什么要遍历整个数组。 你可以做一些像
这样的事情if(search_text === csvvalue [1] [9] .replace(/ \“/ g,''){ //做一点事 }
除非你真的需要知道你运行数组的次数。