首页 > 如何在字符串查询包含数组某个值

如何在字符串查询包含数组某个值

var str="现在已经是夏天了";
var ary = new Array("保存",""加入","夏天");

怎么查询字符串str是否包含数组ary中某个值,并且返回数组ary键名。


可以使用underscore,filter方法返回数组,可以匹配多个数据

var str="现在已经是夏天了";
var ary = new Array("保存","加入","夏天");
_.filter(ary,function(val) {
     return str.indexOf(val) !== -1;
});

返回值为["夏天"]

var str="现在已经是加入夏天了";
var ary = new Array("保存","加入","夏天");
_.filter(ary,function(val) {
     return str.indexOf(val) !== -1;
});

返回值是["加入", "夏天"]

如果你需要返回第一个匹配的字符串可以使用find方法

var str="现在已经是加入夏天了";
var ary = new Array("保存","加入","夏天");
_.find(ary,function(val) {
     return str.indexOf(val) !== -1;
});

返回值是:"加入"



var str="现在已经是夏天了";
var ary = new Array("保存","加入","夏天");

var str2 = "";
for(var i=0;i<ary.length;i++){

if(str.indexOf(ary[i]) != -1){
    str2 = str2 + ary[i];
}

}
alert(str2);

【热门文章】
【热门文章】