如何在数组中找到指定字符串的索引?

时间:2015-07-21 10:40:53

标签: javascript jquery

我有一个类似

的数组

var x=["A|a","B|b","C|c"];

现在,我想找到' c'的索引。这是x [2]。因此,我们可以得到' c'的指数值。通过运行" for"循环并用' |'的分隔符分割每个字符串。我们可以找到它。

但是,有没有找到价值的简单方法?

3 个答案:

答案 0 :(得分:2)

var x=["A|a","B|b","C|c"];
var index = -1;
x.forEach(function(e, i){
  if (e.indexOf("c") !== -1) index = i;
})
alert(index);

答案 1 :(得分:2)

你可以试试这样的东西

Array.prototype.customIndexOf = function(str){
    var s = str.toUpperCase()+"|"+str;
    return this.indexOf(s);
};

var x=["A|a","B|b","C|c"];
x.customIndexOf('c');

一种更好的方法

Array.prototype.customIndexOf = function(str, func){
    var s = func(str);
    return this.indexOf(s);
}

var x=["A|a","B|b","C|c"];
x.customIndexOf('c', function(arg){
    return arg.toUpperCase()+"|"+arg.toLowerCase();
});

答案 2 :(得分:1)

这个怎么样:

for(var i in x){
if(x[i].indexOf('c') != -1)
    alert(i);
}