let cadena="Hola cadena guapa"; console.log(cadena.length); console.log(cadena.charAt(5)); console.log(cadena[5]); // No es recomendable usarlo // Contar las aes en una cadena let cont=0; for(let i=0;i<cadena.length;i++){ if (cadena.charAt(i)=="a"){ cont++; } } console.log(`El número de aes en "${cadena}" es ${cont}`); console.log(cadena.at(5)); // Permite números negativos console.log(cadena.at(-1)); // Le doy la vuelta a la cadena let c=""; for(let i=1;i<=cadena.length;i++){ c+=cadena.at(-i); } console.log(c); // Obtener subcadenas de una cadena console.log(cadena.substr(2,3)); // Desde el caracter 2 3 caracteres "la " console.log(cadena.substr(2)); // Desde el caracter 2 al final "la cadena guapa" console.log(cadena.substring(2,4)); // de la posición 2 a la 4 "la" console.log(cadena.substring(2)); // de la posición 2 al final "la cadena guapa" // Esta es la recomendada console.log(cadena.slice(2,4)); // de la posición 2 a la 4 "la" console.log(cadena.slice(2)); // de la posición 2 al final "la cadena guapa" console.log(cadena.slice(2,-1)); // de la posición 2 a la última letra "la cadena guap" console.log(cadena.slice(-4,-1)); // de la antepenultima a la última letra "uap" for(let i=0;i<cadena.length;i++){ console.log(cadena.slice(i)," - ", cadena.slice(-i)) } // Pasar a mayúsculas y minúsculas console.log(cadena.toLowerCase()); console.log(cadena.toUpperCase()); console.log("pingüino".toLocaleUpperCase()); // Lo mismo pero más adecuado para cadenas con acentos y cosas así // Eliminar espacios let conespacios=" hola que tal "; console.log(conespacios.trim()); // Elimina todos los espacios console.log(conespacios.trimEnd()); // Los del final console.log(conespacios.trimStart()); // Los del principio console.log("hola".repeat(4)); // Repite cuatro veces hola // Reemplazar una cadena por otra console.log(cadena.replace("guapa","fea")); console.log(cadena.replace("a","4")); // Solo lo hace una vez, la primera aparición console.log(cadena.replaceAll("a","4")); // Reemplaza todas // split y join. Sirve para convertir una cadena en un array y viceversa console.log(cadena.split(" ")); console.log(cadena.split("a")); console.log(cadena.split("")); console.log(cadena.split("").sort().join("")); // Crea un arbolito (de un lado) for(let i=0;i<8;i++){ console.log("*".repeat(i)); } // Crea un arbolito (del otro lado) for(let i=0;i<8;i++){ console.log("*".repeat(i).padStart(8-1)); } // Saber si una cadena tiene una subcadena console.log(cadena.includes("gu")); // true console.log(cadena.includes("fu")); // false console.log(cadena.startsWith("Ho")); // true console.log(cadena.startsWith("ho")); // false console.log(cadena.startsWith("pepe")); // false console.log(cadena.endsWith("pa")); // true console.log(cadena.endsWith("PA")); // false console.log(cadena.endsWith("pepe")); // false // Buscar la posición de una cadena dentro de otra console.log(cadena.indexOf("dena")); // 7 porque es la posición donde se encuentra console.log(cadena.indexOf("pepe")); // -1 porque no está la cadena pepe // Puedo decirle la posición desde donde buscar console.log(cadena.indexOf("a")); // 3 porque es la posición donde se encuentra console.log(cadena.indexOf("a",4)); // 6 porque es la posición donde se encuentra // Me busca todas las posiciones de la letra 'a' dentro de la cadena let pos=cadena.indexOf("a"); while(pos!=-1){ console.log(pos); pos=cadena.indexOf("a",pos+1); // Buscamos a partir de la posición siguiente }