Javascript Chrome控制台中的regExp异常反应

Javascript Chrome控制台中的regExp异常反应,javascript,regex,google-chrome,Javascript,Regex,Google Chrome,如以下regExp所示: var reg = /(\.[\u4e00-\u9fa5A-Z_])+/i; reg.test('.a.s'); 只有Chrome得到false,其他浏览器和节点都得到true 这是因为Chrome regExp引擎吗 多亏了@Wiktor Stribiżew的回答,这个问题才得以解决。请参考他的答案 ====================================================================== 执行RegExp时,这

如以下regExp所示:

var reg = /(\.[\u4e00-\u9fa5A-Z_])+/i;
reg.test('.a.s');
只有Chrome得到false,其他浏览器和节点都得到true

这是因为Chrome regExp引擎吗


多亏了@Wiktor Stribiżew的回答,这个问题才得以解决。请参考他的答案

======================================================================

执行RegExp时,这可能是ES6的一个错误。有人在node和chrome社区中报告了这个问题。请参阅这些:


我已经检查了结果。我只得到了真实的结果。你有什么特别的版本吗


最新的Chrome版本在兼容ES6的V8上运行

因此,将
\u9fa5A
视为一个代码点,而不是
\u9fa5
A
,请参见本测试:

//Chorme 51.0.2704.103 m输出在右侧
console.log(
String.fromCharCode(parseInt(“4e00”,16)),//=>“一"
String.fromCharCode(parseInt(“9fa5A”,16)),//=>“署"
String.fromCharCode(parseInt(“9fa5”,16))/=>“龥"

)
但是,
/(\.[\u{4e00}-\u{9fa5}A-Z}])+/iu.test('.A.s'))
正常工作。Chrome引擎符合ES6标准。我可以在Chrome 51.0.2704.103中重新设置OP问题。Chrome版本48.0.2564.116为真。我的Chrome版本为51,测试Chrome 49正常。请参阅@Wiktor Stribiżew给出了完美的答案。感谢您详尽的回答。事实证明,我使用的是Chr的最新版本ome 51.正如您所说,我在node(版本6,1)上测试它也得到了相同的结果。仅供参考:如果在
.a.5
中未找到匹配项,请在模式的开头添加
^
,在其结尾添加
$