无法比较JQuery中的变量

时间:2014-06-03 10:04:29

标签: javascript jquery

我有一系列记录。我想在数组的特定位置搜索字符串。但有些我怎么也做不到。请看下面的代码:

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语句中,

2 个答案:

答案 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,''){   //做一点事   }

除非你真的需要知道你运行数组的次数。