Si tenemos un
Los siguientes métodos realizan algún tipo de operación de modificación sobre un
Método | Descripción |
---|---|
.toLowerCase() |
Devuelve el |
.toUpperCase() |
Devuelve el |
.padStart(size, text) |
Devuelve el text hasta llegar al tamaño size . |
.padEnd(size, text) |
Devuelve el text hasta llegar al tamaño size . |
.trimStart() |
Devuelve el |
.trimEnd() |
Devuelve el |
.trim() |
Devuelve el |
Observa que en todos los casos, se devuelve un nuevo
Los métodos .toLowerCase()
y .toUpperCase()
devuelven el
const text = "Los gatos dominarán el mundo.";
text.toLowerCase(); // "los gatos dominarán el mundo."
text.toUpperCase(); // "LOS GATOS DOMINARÁN EL MUNDO."
La palabra capitalizar se refiere a transformar a mayúsculas su primer carácter, y en minúsculas el resto del texto. En Javascript, no existe una función .toCapitalize()
, pero de necesitarla se podría realizar la siguiente función de ayuda:
const text = "quiero capitalizar este texto.";
const toCapitalize = (text) => text[0].toUpperCase() + text.substring(1);
const toCapitalizeEveryWord = (text) => {
return text.split(" ") // Separamos en un array cada palabra
.map(word => toCapitalize(word)) // Aplicamos el capitalizar a cada elemento
.join(" "); // Lo volvemos a unir en un string
}
toCapitalize(text); // "Los gatos dominarán el mundo."
toCapitalizeEveryWord(text); // "Los Gatos Dominarán El Mundo."
Observa que toCapitalize()
capitaliza la frase en conjunto, mientras que toCapitalizeEveryWord()
capitaliza cada una de las palabras de la frase.
Una transformación interesante que se añade en Javascript .padStart(size, text)
o .padEnd(size, text)
. Ambos métodos toman dos parámetros: size
es la longitud deseada del text
el carácter a utilizar como relleno.
El objetivo de ambas funciones es devolver un nuevo size
y rellenando el resto con text
. Esto se realizará al principio del .padStart()
o al final si se usa .padEnd()
. Veamos un ejemplo:
const stringNumber = "15";
stringNumber.padStart(5, "0"); // "00015"
stringNumber.padStart(3, "0"); // "015"
stringNumber.padStart(2, "0"); // "15"
stringNumber.padStart(1, "0"); // "15"
El método .padEnd()
funcionaría exactamente igual, pero añadiendo el text
al final en lugar de al principio del
Estos métodos resultan especialmente interesantes para formatear horas, como por ejemplo en el caso que queremos que las cifras menores a 10 aparezcan siempre en formato de dos dígitos
00
, en lugar de un formato variable, donde se use un dígito0
para números entre0
y9
y dos dígitos para números mayores a9
.
El método .trim()
y sus métodos derivados, informalmente traducido como «afeitar» o «recortar», se encarga de devolver el
De la misma forma, .trimStart()
y .trimEnd()
son versiones particulares, que realizan la misma tarea, pero sólo a la izquierda o derecha, respectivamente. Veamos algunos ejemplos:
// Observa los espacios añadidos en los extremos de la frase
const text = " ¡Saludad a vuestro nuevo rey gato! ";
text.trim(); // "¡Saludad a vuestro nuevo rey gato!"
text.trimStart(); // "¡Saludad a vuestro nuevo rey gato! "
text.trimEnd(); // " ¡Saludad a vuestro nuevo rey gato!"
text.trimStart().trimEnd() === text.trim(); // true
Puede que en algunos lugares te encuentres los métodos
.trimLeft()
(izquierda) y.trimRight()
(derecha) como alternativas a.trimStart()
y.trimEnd()
. En principio, son una implementación obsoleta que no debería usarse, ya que algunos idiomas, el inicio no es necesariamente la izquierda y podría ser confuso. En su lugar, aunque existan y funcionen, deberían usarse siempre.trimStart()
y.trimEnd()
.
Método | Descripción |
---|---|
.concat(text1, text2...) |
Devuelve el text1 , text2 ... |
El método .concat(text1, text2...)
permite concatenar (unir) los textos pasados por parámetros al propio +
, mucho más legible y compacto en la mayoría de situaciones.
const name = "Manz";
// Utilizando método concat
name.concat("i", "to"); // "Manzito"
name.concat(4, 5); // "Manz45"
name.concat((4 + 5)); // "Manz9"
// Utilizando operador +
name + "i" + "to"; // "Manzito"
name + 4 + 5; // "Manz45"
name + (4 + 5); // "Manz9"
Soy Manz, vivo en Tenerife (España) y soy streamer partner en Twitch y profesor. Me apasiona el universo de la programación web, el diseño y desarrollo web y la tecnología en general. Aunque soy full-stack, mi pasión es el front-end, la terminal y crear cosas divertidas y locas.
Puedes encontrar más sobre mi en Manz.dev