30 Oct Como contar vocales y espacios en blanco en un texto mediante javascript
En el script de este ejercicio vamos a practicar con algunos métodos javascript básicos para el tratado de arrays.
También vamos será necesario recorrer todas las posiciones de un array.
Finalmente de nuevo repasaremos la estructura del switch.
Esta entrada te puede ideas sobre como resolver este ejercicio.
Enunciado
Crea un script que:
Pida al usuario que escriba por pantalla un texto.
- Transforme el texto en un array de letras minúsculas (para facilita la solución del ejercicio).
- Recorra todo el array en búsqueda de cada tipo de vocal a, e, i, o, y.
- Recorra todo el array contabilizando espacios en blanco.
- Finalmente el script debe escribir por pantallas todos y cada uno de los textos y devolver el texto tratado según la imagen a continuación.

Solución del ejercicio
split(«») transforma un string en un array separando cada letra del carácter («»). Muchísima atención porqué no es igual escribir «» que » «. (notar que en el segundo caso si hay un espacio en blanco).
join(«») hace el proceso contrario para volver a unir todas las letras de un vector o array.
toLowerCase() transforma todos los caracteres a minúscula.
El resto de la resolución es muy parecido al ejercicio del dado de 6 caras.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="description" content="Script que cuenta el número de vocales, el número de espacios en blanco y el número de carácteres escritos">
<meta name="author" content="Francesc Ricart">
<title>Ejercicio javascript - ejemplo de uso de métodos</title>
</head>
<body>
<script>
var a = e = i = o = u = blancos = 0;
vectorLetras = consultarTexto();
function consultarTexto(){
var pideTexto = window.prompt("escribe un texto cualquiera");
var textoRoto = pideTexto.toLowerCase().split("");
return textoRoto;
}
for(k=0;k < vectorLetras.length;k++){
switch(vectorLetras[k]){
case "a":
case "à":
case "á":
a++;
break;
case "e":
case "é":
case "è":
e++;
break;
case "i":
case "í":
case "ì":
i++;
break;
case "o":
case "ó":
case "ò":
o++;
break;
case "u":
case "ú":
case "ù":
u++;
break;
case " ":
blancos++;
}
}
totalVocales = a+e+i+o+u;
document.write("Hay " + a + " vocales 'a'<br>");
document.write("Hay " + e + " vocales 'e'<br>");
document.write("Hay " + i + " vocales 'i'<br>");
document.write("Hay " + o + " vocales 'o'<br>");
document.write("Hay " + u + " vocales 'u'<br>");
document.write("<br>");
document.write("Total de vocales: " + totalVocales);
document.write("<br>");
document.write("Total de espacios en blanco: " + blancos);
document.write("<br>");
document.write("Total de carácteres escritos: " + vectorLetras.length);
document.write("<br>");
document.write("Texto original: <b>" + vectorLetras.join("") + "</b>");
</script>
</body>
</html>
¡Hola!
Querido lector,
Este es un interesante ejercicio practicamos con algunos métodos para arrays especialmente interesantes como lo son split() y join().
Hemos vuelto a practicar el uso del for y un switch().
¡Espero que te haya sido de utilidad!
¡Si te ha gustado este contenido te animo a seguirme en mi perfil de empresa de Linkedin!
Entradas relacionadas:
Repasamos los distintos métodos directos e indirectos y estrategias para acceder e identificar los nodos del DOM de modo inequívoco.
Podemos usar los dos sistemas propios de jQuery pero también los ya conocidos de Javascript.. Repasamos como se escriben.
En este resumen encontrarás dos ejemplos explicados paso a paso del while. Incluye una cuenta creciente y una cuenta decreciente.
Ejercicio con solución dónde se usa setInterval y el posicionamiento relativo y absoluto de una caja html. Serie de ejercicios javascript.
Podemos escribir una estructura condicional mediante el if(){}else if(){}else{} o mediante el switch(){}. ¿Cuando usar una opción y no la otra? En esta entrada vemos un ejemplo para el switch y coment...
Programa javascript en la que se crea una etiqueta imagen que contiene un gif con un saludo. Se practica addEventListener() y removeChild(). Incluye solución.
No Comments