Warum ist RegExp.test () nicht konsistent?

Ich verstehe nicht warum das JavascriptRegExp.test() Methode nicht jedes Mal das gleiche Ergebnis zurückgeben, wenn ich es aufrufe.

Angesichts der folgenden Javascript-Variablen

var opener = '<span[^>]*>';
var regexo = new RegExp('^'+opener+'

Ich mache folgendes:

alert(regexo.test('<span class="outer">')); // true
alert(regexo.test('<span class="inner">')); // false
alert(regexo.test('<span class="inner">')); // true

Ich habe es in Firefox 24.0 und IE8 mit dem gleichen seltsamen Ergebnis getestet.

Warum ist das Ergebnistrue, false, true anstatttrue, true, true ?

, "g");

Ich mache folgendes:

alert(regexo.test('<span class="outer">')); // true
alert(regexo.test('<span class="inner">')); // false
alert(regexo.test('<span class="inner">')); // true

Ich habe es in Firefox 24.0 und IE8 mit dem gleichen seltsamen Ergebnis getestet.

Warum ist das Ergebnistrue, false, true anstatttrue, true, true ?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage