Implementarnos la función replace de JavaScript
Dentro del lenguaje JavaScript existe la función replace para realizar la sustitución de cadenas de textos. Podemos ver un ejemplo en “Función Replace en JavaScript”.
En este ejemplo vamos a ver como implementarnos la función replace a partir de otras funciones existentes en el lenguaje JavaScript.
Definir el interface de la función
Sección titulada «Definir el interface de la función»Lo primero que haremos será definirnos el interface de la función:
function replace(texto, s1, s2) { // código de la función}En esta función reemplazaríamos sobre el texto las cadenas s1 que encontrásemos por las cadenas s2.
Utilizar split() y join()
Sección titulada «Utilizar split() y join()»Existen diferentes formas de hacer dicha sustitución. Todas ellas nos las tenemos que codificar. En este caso vamos a utilizar dos funciones: .split() y .join().
La primera lo que hace es, a partir de una cadena, crear un array de cadenas. La división la hace a partir del parámetro recibido. Así, si tenemos el siguiente código:
var texto = "Son dos mil doscientos treinta y dos con nueve";var array = texto.split("dos");Lo que obtendremos será un array de la siguiente forma:
array[0] = 'Son ';array[1] = ' mil ';array[2] = 'cientos treinta y ';array[3] = 'con nueve';Vemos que son 4 cadenas:
'Son '' mil ''cientos treinta y ''con nueve'
Unir el array con join()
Sección titulada «Unir el array con join()»Seguidamente utilizamos el método .join(). Este método lo que hace es unir un array de cadenas y entre cada cadena mete el texto que se recibe como parámetro. Así conseguimos hacer la sustitución del texto.
var nuevoTexto = array.join("tres");El resultado será:
"Son tres mil trescientos treinta y tres con nueve"Implementación completa de la función replace
Sección titulada «Implementación completa de la función replace»La función replace quedará de la siguiente forma:
function replace(texto, s1, s2) { return texto.split(s1).join(s2);}Descarga el código de Implementarnos la función replace de JavaScript
Ya que no está dentro del lenguaje veamos como podemos implementarnos la función replace de JavaScript.