Qual è il modo più veloce per sostituire tutte le istanze di una stringa/carattere in una stringa in JavaScript? Un while
, un for
-loop, un'espressione regolare?
var mystring = 'This is a string';
var newString = mystring.replace(/i/g, "a");
newString ora è 'Thas as a strang'
Cosa sia il più veloce non lo so, ma so cosa sia il più leggibile - quello che è più breve e più semplice. Anche se è un po' più lento di altre soluzioni, vale la pena usarlo.
Quindi usa:
"string".replace("a", "b");
"string".replace(/abc?/g, "def");
E godetevi un buon codice invece di uno più veloce (beh... 1/100000 di secondo non è una differenza) e brutto. ;)
Usa il metodo replace()
dell'oggetto String
.
Come menzionato nella risposta selezionata, il flag /g dovrebbe essere usato nella regex, per sostituire tutte le istanze della sottostringa nella stringa.