Skip to content

Commit e17e164

Browse files
committed
#4 - Javascript
1 parent 63e6938 commit e17e164

File tree

1 file changed

+148
-0
lines changed
  • Roadmap/04 - CADENAS DE CARACTERES/javascript

1 file changed

+148
-0
lines changed
Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
/*
2+
* EJERCICIO:
3+
* Muestra ejemplos de todas las operaciones que puedes realizar con cadenas de caracteres
4+
* en tu lenguaje. Algunas de esas operaciones podrían ser (busca todas las que puedas):
5+
* - Acceso a caracteres específicos, subcadenas, longitud, concatenación, repetición, recorrido,
6+
* conversión a mayúsculas y minúsculas, reemplazo, división, unión, interpolación, verificación...
7+
*/
8+
9+
const palabra = "Javascript"
10+
11+
//Acceder a un caracter.
12+
console.log(palabra.charAt(0))
13+
console.log(palabra[0]) //Opcion mas moderna, pero no soportada en IE7
14+
console.log("---------------------------")
15+
16+
17+
//Comparar caracteres
18+
let a = "a"
19+
let b = "b"
20+
21+
if(a < b){
22+
console.log(a + " es menor que " + b) //Se imprime esto porque el valor ASCII de la letra a es menor que la letra b
23+
} else if(a > b){
24+
console.log(a + " es mayor que " + b)
25+
} else{
26+
console.log("Son iguales")
27+
}
28+
console.log("---------------------------")
29+
30+
//Substring
31+
console.log(palabra.substring(1,3)) //Primera letra se incluye y la utlima NO se incluye
32+
console.log(palabra.substring(2)) //Se imprime a partir de la letra seleccionada hasta el final
33+
console.log("---------------------------")
34+
35+
//Longitud
36+
const emoji = "😄"
37+
console.log(palabra.length)
38+
console.log(palabra.length - 1) //Tambien se le puede restar a la longitud
39+
40+
console.log(emoji.length) //Devuelve 2 debido a que Javascript usar utf-16 para representar caracteres
41+
console.log([...emoji].length) //De esta manera devuelve el numero de caracteres
42+
43+
console.log("---------------------------")
44+
45+
//Concatenacion
46+
let nombre = "Denis"
47+
let frase = "Hola, me llamo"
48+
49+
console.log("Hola, me llamo " + nombre) //Usando el operador +
50+
console.log(`Hola, me llamo ${nombre}`) //Usando plantillas literales. No soportado en IE7
51+
console.log(frase.concat(" ", nombre)) //Usando concat()
52+
53+
console.log("---------------------------")
54+
55+
//Repeticion
56+
console.log(palabra.repeat(3))
57+
58+
console.log("---------------------------")
59+
60+
// Recorrido
61+
for (let i = 0; i < palabra.length; i++) {
62+
console.log(palabra[i]);
63+
}
64+
65+
console.log("---------------------------")
66+
67+
//Conversion Mayusculas <-> Minusculas
68+
console.log(palabra.toLowerCase())
69+
console.log(palabra.toUpperCase())
70+
71+
console.log("---------------------------")
72+
73+
//Reemplazo
74+
let frase2 = "Hola Hola mundo"
75+
console.log(frase.replace("Hola", "Adios")) //Solo reemplaza la primera coincidencia
76+
console.log(frase.replaceAll("Hola", "Adios")) //Reemplaza todas las coincidencias
77+
78+
console.log("---------------------------")
79+
80+
//Division
81+
let frase3 = "Hola mundo estoy aprendiendo Javascript"
82+
let split = frase3.split(" ")
83+
console.log(split)
84+
console.log("---------------------------")
85+
86+
//Union
87+
let joined = split.join(" ")
88+
console.log(joined)
89+
console.log("---------------------------")
90+
91+
//Interpolacion (mismo ejemplo que en el apartado concatenacion)
92+
console.log(`Hola, me llamo ${nombre}`)
93+
console.log("---------------------------")
94+
95+
//Verificacion
96+
console.log(frase3.includes("mundo")) // True
97+
console.log(frase3.includes("Mundo")) //False
98+
console.log("---------------------------")
99+
100+
//Trim
101+
let frase4 = " Hola mundo "
102+
console.log(frase4)
103+
console.log(frase4.trim()) //Quita los espacios en blanco al principio y al final del string.
104+
console.log(frase4.trimEnd()) //Quita los espacios en blanco al final del string.
105+
console.log(frase4.trimStart()) //Quita los espacios en blanco al principio del string.
106+
console.log("---------------------------")
107+
108+
//Reverse
109+
console.log(split.reverse().join(" "))
110+
console.log("---------------------------")
111+
112+
113+
114+
/*
115+
* DIFICULTAD EXTRA (opcional):
116+
* Crea un programa que analice dos palabras diferentes y realice comprobaciones
117+
* para descubrir si son:
118+
* - Palíndromos
119+
* - Anagramas
120+
* - Isogramas
121+
*/
122+
123+
//Palindromo
124+
function esPalindromo(palabra1){
125+
return palabra1 === palabra1.split("").reverse().join("")
126+
127+
}
128+
console.log(esPalindromo("somos"))
129+
130+
//Anagrama
131+
function esAnagrama(palabra1, palabra2){
132+
return palabra1.split("").reverse().join("") === palabra2
133+
}
134+
console.log(esAnagrama("roma", "amor"))
135+
136+
//Isograma
137+
function esIsograma(palabra1){
138+
let letras = palabra1.split("")
139+
for (let i = 0; i < letras.length; i++) {
140+
for (let j = i+1; j < letras.length; j++) {
141+
if(letras[i] === letras[j]){
142+
return false
143+
}
144+
}
145+
}
146+
return true
147+
}
148+
console.log(esIsograma("murcielago"))

0 commit comments

Comments
 (0)