【问题标题】:JsHint warning: A regular expression literal can be confused with '/='JsHint 警告:正则表达式文字可能与 '/=' 混淆
【发布时间】:2012-10-28 11:51:34
【问题描述】:

我的 Javascript 代码中有这一行:

var regex = /===Hello===\n/;

JsHint 在这一行给了我一个警告:

A regular expression literal can be confused with '/='`

...但是我不知道这个正则表达式有什么问题?如何避免此警告?

【问题讨论】:

  • 你为什么在这里使用正则表达式?
  • g 你是对的,这个例子不好。我的真实代码有一个更大的正则表达式,它确实必须是一个正则表达式。

标签: javascript jshint


【解决方案1】:

问题在于/= 可以解释为除法和赋值,而不是正则表达式文字的开头。

您可以改用RegExp constructor 来避免警告:

var regex = new RegExp("===Hello===\n");

似乎没有any option,您可以设置告诉 JSHint(或 JSLint)忽略 /=,因此您可以选择解决它或忽略警告。

【讨论】:

  • 感谢您的解释,我没有考虑分工。我将使用您的 RegExp 解决方案。
  • 我已向the articlejslinterrors.com 添加了有关此错误的更多信息。
猜你喜欢
  • 1970-01-01
  • 2023-03-08
  • 2018-07-05
  • 1970-01-01
  • 1970-01-01
  • 2012-12-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多