JS正则与注释的冲突
最近在写一款前端组件的时候,无意发现正则与注释之间的一点冲突,现分享下。
下边是一段仅有正则表达式的代码:
str = ‘hello js fan‘;
console.log(str.match(/s.*/));运行结果如下图:
下边我加上注释:
/*this is a test
str = ‘hello js fan‘;
console.log(str.match(/s.*/));
*/表面看这段代码很正常,但运行后呢?
这是运行后的结果
显示第3句后边不应该接‘)‘。
猜测应该是正则没有使用引号,导致JS解析时将正则里边的"*/"做为了注释的结尾。
大家在使用正则时注意这块,小心掉入陷阱!
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!