是否有更有效的方式来显示它:
$(this).text() === "something" || $(this).text() === "somethingelse"
就像这样:
$(this).text() === ("something" || "something else")
清晰度:我并不是说它应该与我显示的一模一样。我想知道是否有更简单的方法来做我的建议。所以,我不是在重复同样的命令。我只是想比较某些文本,例如。
答案 0 :(得分:4)
您可以创建选项数组并检查您的值是否在该数组中。
["something", "something else"].indexOf($(this).text()) != -1
使用ES7,您可以使用includes()
["something", "something else"].includes($(this).text())
答案 1 :(得分:1)
有几种方法可以达到预期效果
方法1 - 使用indexOf()
var myList = ["something", "somethingElse"];
if (myList.indexOf($(this).text()) !== -1) {
//ok
} else {
//nok
}
方法2 - 使用jQuery.inArray
//This yields to false
$.inArray( 5 + 5, [ "8", "9", "10", 10 + "" ] );
//This yields to true
$.inArray( 5 + 5, [ "8", "9", "10", 10 ] );
发生这种情况的原因是因为JavaScript将0视为松散等于false
方法3 - 使用includes()
var a = [1, 2, 3];
a.includes(2); // true
a.includes(4); // false
方法4 - switches
switch (expression) {
case value1:
//Statements executed when the result of expression matches value1
[break;]
case value2:
//Statements executed when the result of expression matches value2
[break;]
default:
//Statements executed when none of the values match the value of the expression
[break;]
}