首页 > 解决方案 > 为什么这些声明正则表达式的不同方式不会产生相同的结果?

问题描述

这是以两种不同方式声明相同模式的代码

let reg = new RegExp("\d+"); // 1st way
let reg2 = /\d+/; // 2nd way
let string = "one two 100";
console.log(reg.test(string)); // false
console.log(reg2.test(string)); // true

我正在阅读“Eloquent JavaScript”一书,他们说这两种声明正则表达式的方式是等价的,但我不知道为什么上面的代码会产生不同的结果。

标签: javascriptregex

解决方案


推荐阅读