La funzione PHP str_replace() permette di usare gli array per operare le sostituzioni nel testo. Questa funzione non utilizza le espressioni regolari nella ricerca, ed è indicata per quando abbiamo un numero ben limitato di sostituzioni. Possiamo implementare qualcosa di analogo in JavaScript. Vediamo come fare.
La nostra implementazione è la seguente:
var strReplace = function(searches, replacements, str) {
for (var i = 0; i < searches.length; i++) {
str = str.replace(searches[i], replacements[i]);
}
return str;
}
Data la seguente stringa (presa in prestito dalla documentazione PHP):
<p id="test">You should eat fruits, vegetables, and fiber every day.</p>
ecco un esempio pratico:
document.getElementById('replace').onclick = function() {
var test = document.getElementById('test'),
text = test.firstChild.nodeValue,
$healthy = new Array("fruits", "vegetables", "fiber"),
$yummy = new Array("pizza", "beer", "ice cream");
test.firstChild.nodeValue = strReplace($healthy, $yummy, text);
};
Potete visionare l'esempio finale in questa pagina.