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解析时将正则里边的"*/"做为了注释的结尾。
大家在使用正则时注意这块,小心掉入陷阱!
本文内容仅供个人学习/研究/参考使用,不构成任何决策建议或专业指导。分享/转载时请标明原文来源,同时请勿将内容用于商业售卖、虚假宣传等非学习用途哦~感谢您的理解与支持!