我正在尝试编写一个简单的if语句,用于查看单词是否与其他单词匹配。当我只使用一个单词而不是像下面这样的多个单词时,我可以让它工作。当我使用if (||)
时。
我想使用“包含”,但无法看到如何使用var
另外:(“Woven || Main”)是一个var所以我需要这个部分才能保持在一起。
var option =“Woven || Main”;
这不起作用:
var titleIs = "Knit";
if (titleIs.match("Woven || Main")) {
alert("Main")
}
这有效:
var titleIs = "Knit";
if (titleIs.match("Woven")) {
alert("Main")
}
答案 0 :(得分:1)
var titleIs = "Knit";
if(titleIs.match("Woven") || titleIs.match("Main")){
alert("Main")
}
答案 1 :(得分:1)
而不是使用||字符串之间使用||在比赛之间。
var titleIs = "Knit";
if(titleIs.match("Woven") || titleIs.match("Main")){
alert("Main")
}
答案 2 :(得分:0)
var words = ['Woven', 'Main'];
var regex = new RegExp('^(' + words.join('|') + ')$');
if (regex.test(titleIs)) {...}
答案 3 :(得分:0)
您可以使用单词数组和Array.prototype.indexOf
来检查数组是否包含您的标题。
var words = ["Woven", "Main"];
var titleIs = "Knit";
function contains(arr, str) {
return !!~arr.indexOf(str)
}
console.log(contains(words, titleIs)); //false
注意:的
Array.prototype.reduce是ECMAScript 5的补充;因此,它可能不存在于标准的其他实现中。
要支持旧版浏览器,您可以使用shim MDN提供
为例