【发布时间】:2018-10-17 02:29:29
【问题描述】:
我有几行javascript代码如下:
var str = '////';
var re = /^\/+$/g
console.log(str && re.test(str), str && !re.test(str));
Node.js 中的代码输出为false, false,Chrome 客户端为true, true
我很困惑,有人能帮忙理解吗:
- 为什么两个布尔语句都被评估为
true或false,而它们本来是相反的? -
Chrome和Node.js在评估这两个布尔语句时有什么区别?
【问题讨论】:
-
Node 中的代码对我来说似乎评估为
true和true -
很确定您的问题来自重用全局正则表达式
标签: javascript node.js google-chrome boolean boolean-operations