我要做的是根据网址选择一个选项。所以到目前为止我所做的就是获取网址并将其与选项相匹配。然后将匹配存储在一个数组中,然后我删除了一些术语,如'http','org'等。我能够将其缩小为两个关键字。
现在我需要选择一个与数组中某个关键字匹配的选项。
我尝试使用'过滤器',包含:和map但只有在我使用一个术语和数组时它才有用,我有一个术语数组。所以我需要知道的是基于第一场比赛的选择和选项。从选项的文本到数组中的术语。
//this is my arr
var arr = ["Pro_life", "Inactive"]
//this is the text from the options
FB_Ext_Pro_life_Specific_Inactive
FB_register_now
我需要找到一种方法来选择FB_Ext_Pro_life_Specific_Inactive'用我的数组中的术语。 有人有什么想法吗?
答案 0 :(得分:1)
我没有完全得到你的问题,但我设法做到了这个
var arr = ["Pro_life", "Inactive"]
var options = ["FB_Ext_Pro_life_Specific_Inactive", "FB_register_now", "sample_Inactive__"]
for (var x = 0; x < arr.length; x++) {
for (var y = 0; y < options.length; y++) {
if (options[y].indexOf(arr[x]) != -1) {
console.log("Option " + options[y] + " matches with " + arr[x]);
}
}
}
&#13;
它使用indexOf()
来检查关键字是否与选项
答案 1 :(得分:0)
可能你可以这样做;
var arr = ["Pro_life", "Inactive"],
str = "FB_Ext_Pro_life_Specific_Inactive\nFB_register_now",
result = str.split("\n")
.filter(s => arr.some(k => s.indexOf(k) !== -1));
console.log(result);
&#13;