Javascript:与正则表达式或其他方式进行比较



我知道我可以做/z/i.test(str),我也可以与两个str === z || tre === Z进行比较,只是我很好奇是否有这样的短线

if (str === /z/i) { do the dew }

上面的行不应该检查str是否包含z|Z而是检查它是否等于z|Z

谢谢:)

JavaScript没有

=~运算符(如Perl,Ruby等(。

当你写str === /n|z/i时,你正在将字符串与正则表达式对象进行比较,这没有意义,会产生意想不到的结果。

如果/z/i.test(str)包含zZ,则str返回 true。

如果您需要使用非正则表达式方法来检查相同的条件,请使用

if (z.toLowerCase().indexOf("z") > -1)

如果需要检查字符串是否等于 zZ ,则可以使用

if (z.toUpperCase() === "Z")

示例演示:

z = "Zoe"; 
if (z.toLowerCase().indexOf("z") > -1) {
  document.body.innerHTML = "'Z' or 'z' is present in 'Zoe'.<br/>";
}
z = "z"; 
if (z.toUpperCase() === "Z") {
  document.body.innerHTML += "The string  is equal to 'z' or 'Z'";
}

相关内容

  • 没有找到相关文章

最新更新