Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带字符串的JavaScript开关语句包括_Javascript_Jquery - Fatal编程技术网

带字符串的JavaScript开关语句包括

带字符串的JavaScript开关语句包括,javascript,jquery,Javascript,Jquery,我一直在寻找一些可以测试变量是否有特定单词和switch语句的东西: JavaScript var str = "We are VR Troopers"; switch (str) { case str.includes("are"): // do something; break; // no default } 我找了一下,什么也没找到。你能提供一个你的答案的链接吗?这对我的学习有好处。谢谢 如果if太多,我想限制使用。如果您不想使用if最简单的解决方案是使用开关(tr

我一直在寻找一些可以测试变量是否有特定单词和switch语句的东西:

JavaScript

var str = "We are VR Troopers";

switch (str) {
 case str.includes("are"):
   // do something;
   break;
  // no default
}
我找了一下,什么也没找到。你能提供一个你的答案的链接吗?这对我的学习有好处。谢谢


如果
if
太多,我想限制使用。

如果您不想使用
if
最简单的解决方案是使用
开关(true)
构造

我还建议,当您需要检查常量参数时,不要使用
includes
,因为它的支持度现在很差(IE和Edge都不支持它),而应该使用正则表达式(如果您的参数是可变的,则使用a)

见:


例如,您可以对其进行改进,以测试它是word,还是对表达式不区分大小写,如
/\bare\b/
/are/i
如果您不想使用
if
则最简单的解决方案是使用
开关(true)
构造

我还建议,当您需要检查常量参数时,不要使用
includes
,因为它的支持度现在很差(IE和Edge都不支持它),而应该使用正则表达式(如果您的参数是可变的,则使用a)

见:


例如,您可以对它进行改进,以测试它是word,还是对表达式不区分大小写,如
/\bare\b/
/are/i

在switch case中使用正则表达式是一种好的做法吗?参考资料:@Iceman这本身并不是一个坏的做法,但事实证明通常有更好的解决方案,我无法从过于有限的问题中推断出来(在这个特定的案例中,显而易见的解决方案是
if
)。答案是有效的,但使用
if
可能太多而无法键入。在switch case中使用regex是否是一个好的做法?参考资料:@Iceman这本身不是一个坏的做法,但事实证明通常有一个更好的解决方案,我无法从过于有限的问题中推断出来(在这个特定的案例中,显而易见的解决方案是
if
)。答案是有效的,但使用
if
可能太多而无法键入。
var str = "We are VR Troopers";

switch (true) {
 case /are/.test(str):
   // do something;
   break;
  // no default
}