例如,我有字符串:的js檢查字符串數組
var str = "Overweek,Next 14 days";
和數組:
var arr=["Next 14 days","Next month"];
如何檢查如果str在引線一部分(Overweek和接下來14天)在陣列中。 我試過了:
$.inArray(str,array);
但它不起作用。 我該如何解決它?
例如,我有字符串:的js檢查字符串數組
var str = "Overweek,Next 14 days";
和數組:
var arr=["Next 14 days","Next month"];
如何檢查如果str在引線一部分(Overweek和接下來14天)在陣列中。 我試過了:
$.inArray(str,array);
但它不起作用。 我該如何解決它?
隨着Array.prototype.some
和String.prototype.includes
:
var str = "Overweek,Next 14 days";
var arr=["Next 14 days","Next month"];
let found = arr.some(needle => str.includes(needle));
console.log(found);
if(jQuery.inArray("Overweek", arr) !== -1){
alert('IN ARRAY')
}
我不知道你想要什麼,但你可以用逗號分割的字符串,然後通過文字遍歷這個新陣詞,在我的例子做你原來的檢查等。
要麼使用some
(如在其他答案),或者你可以使用String.protoype.includes.apply
,如下圖所示:
var str = "Overweek,Next 14 days";
var arr=["Next 14 days","Next month"];
console.log(String.prototype.includes.apply(str, arr)); // true
console.log(String.prototype.includes.apply(str, ['yesterday', 'tomorrow'])); // false
console.log(String.prototype.includes.apply(str, ['Next 14 days', 'tomorrow'])); // true
當你說「的STR至少一部分」,你需要定義一個部分就是分割你的str
然後循環
var str = "Overweek,Next 14 days";
var arr=["Next 14 days","Next month"];
$(str.split(',')).each(function(index, item){
if($.inArray(item, arr) > -1)
alert(item);
});
。有多少個字符是「零件」? – jmargolisvt