var text = "cat, bat, sat, fat";
var pattern2 = /.at/g;
var matches = pattern2.exec(text);
console.log(matches.index); //0
console.log(matches[0]); //cat
console.log(pattern2.lastIndex); //3
matches = pattern2.exec(text);
console.log(matches.index); //5,为什么是5,不应该从fat开始吗?
console.log(matches[0]); //bat
console.log(pattern2.lastIndex); //8
為什麼後面從bat開始,不應該從fat開始嗎?
阿神2017-05-18 11:03:08
不是啊,是一個一個往後走的,第一輪匹配到cat中的at,index改為cat後面的逗號開始的,為3,然後繼續往後走匹配到bat中的at,index是5 .就像剛開始的0一樣。