任何人都知道为什么 RegExp.$1-x 变量不能设置为未定义?
以下是 nodejs 中的示例。chrome/firefox 中的相同行为:
console.log('1:', RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4);
// 1: / Users/tiefenma/Desktop/ test.js .js
var string = 'test1 test2 test3';
var test = string.match(/(test1).*(test2).*(test3)/gm);
console.log('2:', RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4);
// 2: test1, test2, test3
RegExp.$1 = undefined;
RegExp.$2 = undefined;
RegExp.$3 = undefined;
console.log('3:', RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4);
// 3: test1, test2, test3
delete RegExp.$1;
delete RegExp.$2;
delete RegExp.$3;
console.log('4:', RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4);
// 4: test1, test2, test3
''.match(/(.*)/g);
console.log('5:', RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$4);
// 5: