我的代码如下所示:
function testfunc() {
var exp = /aa/gi;
var ret = [];
var test = ['aaa', 'aaa', 'aaa', 'aaa', 'aaa', 'aaa'];
for (var j = 0; j < test.length; j++) {
ret.push(exp.test(test[j]));
}
console.log(ret);
}
testfunc();
&#13;
而不是返回
[true, true, true, true, true, true]
它返回
[true, false, true, false, true, false]
我不明白为什么!
我的代码有什么问题吗?
答案 0 :(得分:1)
g
修饰符
匹配下一个对象时,将从上次使用的索引开始,而不是0
function testfunc() {
var exp = /aa/i;
var ret = [];
var test = ['aaa', 'aaa', 'aaa', 'aaa', 'aaa', 'aaa'];
for (var j = 0; j < test.length; j++) {
ret.push(exp.test(test[j]));
}
console.log(ret);
}
testfunc();