我有一个名为selectedTagArray的数组。它包含一系列字符串,“零”,“一”,“二”,“三”。当一个按钮被点击“.navitem”类时,就会启动一个功能。当这个函数被赋值时,它会检查一个带有类“.tags”内容的跨度是否包含与数组中的一个或多个项匹配的任何项。如果跨度内容确实包含在数组中找到的字符串,则该函数返回true,如果该函数没有返回false。使用for循环替换一系列逻辑或运算符
因为数组可能是任意长的,并且没有办法知道数组会多长时间,所以编写一堆逻辑OR运算符是没有意义的。
我该如何将我的代码转换为包含一个for循环,该循环只是简单地循环遍历数组替代索引位置,而不必写出多行相同的代码?
<span class="tags">zero</span> // True
<span class="tags">one, three</span> // True
<span class="tags">two, four</span> // True
<span class="tags">four</span> // False
var selectedTagArray = ['zero', 'one', 'two', 'three'];
$(".navitem").click(function() {
featureList.filter(function(item) {
if (
(item.values().tags.includes(selectedTagArray[0])) ||
(item.values().tags.includes(selectedTagArray[1])) ||
(item.values().tags.includes(selectedTagArray[2])) ||
(item.values().tags.includes(selectedTagArray[3]))
)
{
return true;
} else {
return false;
}
});
});
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/一些 – Slai