| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll | [Back] [Original] |
Get to know MDN better
Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since agosto de 2020.
El mtodo replaceAll() retorna una nueva cadena con todas las coincidencias de un patrn reemplazadas por un reemplazo. El patrn puede ser una cadena o un objeto RegExp, y el reemplazo puede ser una cadena o una funcin que ser llamada para cada coincidencia. La cadena original permanecer inalterada.
const paragraph = "I think Ruth's dog is cuter than your dog!";
console.log(paragraph.replaceAll("dog", "monkey"));
// Expected output: "I think Ruth's monkey is cuter than your monkey!"
// Global flag required when calling replaceAll with regex
const regex = /Dog/gi;
console.log(paragraph.replaceAll(regex, "ferret"));
// Expected output: "I think Ruth's ferret is cuter than your ferret!"
replaceAll(patrn, reemplazo)
patrnPuede ser una cadena o un objeto con un mtodo Symbol.replace el tpico ejemplo es una expresin regular (regex). Cualquier valor que no tenga el mtodo Symbol.replace ser convertido a una cadena.
Si patrn es una regex, entonces debe tener el parmetro global (g) establecido, o un TypeError es lanzado.
reemplazoPuede ser una cadena o una funcin. El reemplazo tiene la misma semntica que la de String.prototype.replace().
Una nueva cadena, con todas las coincidencias de un patrn reemplazadas por un reemplazo.
TypeErrorLanzado si el patrn es una regex que no tiene el parmetro global (g) configurado (su propiedad flags no contiene "g")
Este mtodo no modifica el valor de la cadena en la que es ejecutado. Regresa una nueva cadena.
A diferencia de replace(), este mtodo reemplazar todas las coincidencias de una cadena, no solo la primera. Esto es especialmente til si la cadena no es estticamente conocida, como llamando al contructor del objeto RegExp() sin escapar caracteres especiales podra cambiar su semntica sin intencin.
function unsafeRedactName(text, name) {
return text.replace(new RegExp(name, "g"), "[REDACTED]");
}
function safeRedactName(text, name) {
return text.replaceAll(name, "[REDACTED]");
}
const report =
"A hacker called ha.*er used special characters in their name to breach the system.";
console.log(unsafeRedactName(report, "ha.*er")); // "A [REDACTED]s in their name to breach the system."
console.log(safeRedactName(report, "ha.*er")); // "A hacker called [REDACTED] used special characters in their name to breach the system."
Si el patrn es un objeto con un mtodo Symbol.replace (incluyendo objetos RegExp), ese mtodo es llamado con la cadena objetivo y reemplazo como argumento. Su valor de retorno se convierte en el valor de retorno de replaceAll(). En este caso el comportamiento de replaceAll() es enteramente codificado por el mtodo @@replace, y por lo tanto tendr el mismo resultado que replace() (aparte de la validacin extra de que regex es global).
Si el patrn es una cadena vaca, el reemplazo ser insertado entre cada unidad de cdigo UTF-16, similar al comportamiento de split().
"xxx".replaceAll("", "_"); // "_x_x_x_"
Para ms informacin acerca de cmo interactan las propiedades de una regex (especialmente el paramtro sticky), vase RegExp.prototype[@@replace]().
"aabbcc".replaceAll("b", ".");
// 'aa..cc'
Cuando se usa una expresin regular como valor de bsqueda, sta debe ser global. Esto no funcionar:
"aabbcc".replaceAll(/b/, ".");
// TypeError: replaceAll must be called with a global RegExp
Esto s funcionar:
"aabbcc".replaceAll(/b/g, ".");
// "aa..cc"
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-string.prototype.replaceall |
String.prototype.replaceAll en core-jsString.prototype.replace()String.prototype.match()RegExp.prototype.exec()RegExp.prototype.test()This page was last modified on 29 may 2026 by MDN contributors.
StringString.prototype.anchor()at()String.prototype.big()String.prototype.blink()String.prototype.bold()String.prototype.charAt()String.prototype.charCodeAt()String.prototype.codePointAt()String.prototype.concat()String.prototype.endsWith()String.prototype.fixed()String.prototype.fontcolor()String.prototype.fontsize()String.prototype.includes()String.prototype.indexOf()isWellFormed()String.prototype.italics()String.prototype.lastIndexOf()String.prototype.link()String.prototype.localeCompare()String.prototype.match()String.prototype.matchAll()String.prototype.normalize()padEnd()String.prototype.padStart()String.prototype.repeat()String.prototype.replace()String.prototype.replaceAll()String.prototype.search()String.prototype.slice()String.prototype.small()String.prototype.split()String.prototype.startsWith()String.prototype.strike()String.prototype.sub()String.prototype.substr()String.prototype.substring()String.prototype.sup()String.prototype.toLocaleLowerCase()String.prototype.toLocaleUpperCase()String.prototype.toLowerCase()String.prototype.toString()String.prototype.toUpperCase()toWellFormed()String.prototype.trim()String.prototype.trimEnd()trimStart()String.prototype.valueOf()[Symbol.iterator]()Object/FunctionYour blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |