Wann haben alle Browser angefangen, String.replace (regexp, replacement_function) zu unterstützen?

Nach der 6. Auflage vonJavaScript: Der endgültige Leitfaden (Flanagan, 2011):

ECMAScript v3 gibt an, dass dasErsatz Argument zureplace() kann eine Funktion anstelle eines Strings sein.

Ich sehe mir einen Code aus dem Jahr 2005 an, in dem akomplizierte Problemumgehung wurde verwendet, um Teile einer Zeichenfolge zu ersetzen. Die Kommentare für den Code weisen eindeutig darauf hin, dass er ursprünglich die Funktion verwendet hatreplace() Methode, aber dass die Problemumgehung für die Cross-Browser-Kompatibilität notwendig war.

ECMAScript v3 ist 1999 erschienen und, soweit ich das beurteilen kann (vondieser Diskussionsbeitrag unddieser Blogbeitrag), ECMAScript v3 wurde seit Ende 2001 von allen gängigen Browsern unterstützt. Konnte sich der Autor geirrt haben oder kann jemand Aufschluss darüber geben, warum eine solche Problemumgehung im Jahr 2005 notwendig gewesen sein könnte?

...

AKTUALISIEREN Der eigentliche Kommentar des Autors des Codes lautet:

Lambda-Funktionen in RegExps sind derzeit bei zu vielen Browsern ein Problem.

Code geändert, um zu umgehen.

Der Autorencode funktioniert für oder läuftdieses Geschäft, obwohl der Code selbst ein persönliches Projekt sein kann.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage