js 正则 常量表达式与构造函数的区别

var patrn1=new RegExp("secDeptId=((\d)+)[&]?" , "g");

var patrn2=/secDeptId=((\d)+)[&]?/g;

patrn2.exec("commender?secDeptId=1140000000001");
为什么用常量表达式可以取值,用构造函数不行呢。

[code="java"]
var patrn1=new RegExp("secDeptId=((\d)+)[&]?" , "g");
var patrn2=/secDeptId=((\d)+)[&]?/g;
patrn1.exec("commender?secDeptId=1140000000001");
alert(RegExp.$1);
patrn2.exec("commender?secDeptId=1140000000001");
alert(RegExp.$1);
[/code]
正则表达式对象中要转义‘\’

嗯 要多加个斜杠转义,正则表达式构造函数的意义在于动态的创建正则表达式