1
+ // #04 CADENAS DE CARACTERES
2
+
3
+ // Ejercicio
4
+
5
+ // Acceso a caracteres específicos
6
+
7
+ let cadena = "Hola, mundo!" ;
8
+
9
+ console . log ( "Primer caracter:" , cadena [ 0 ] ) ;
10
+ console . log ( "Primer caracter:" , cadena . charAt ( 0 ) ) ;
11
+
12
+ // Subcadena
13
+
14
+ let subcadena = cadena . substring ( 6 , 11 ) ;
15
+ console . log ( "Subcadena:" , subcadena ) ;
16
+
17
+ // Longitud de cadena
18
+
19
+ console . log ( "Longitud de la cadena:" , cadena . length ) ;
20
+
21
+ // Concatenación de cadenas
22
+
23
+ let cadena1 = "Hola" ;
24
+ let cadena2 = "mundo!" ;
25
+
26
+ let cadenaConcatenada = cadena1 + " " + cadena2 ;
27
+ console . log ( "Cadena concatenada:" , cadenaConcatenada ) ;
28
+
29
+ let cadenaConcatenada2 = cadena1 . concat ( " " , cadena2 ) ;
30
+ console . log ( "Cadena concatenada:" , cadenaConcatenada2 ) ;
31
+
32
+ // Repetición
33
+
34
+ let cadenaRepetida = cadena . repeat ( 3 ) ;
35
+ console . log ( "Cadena repetida:" , cadenaRepetida ) ;
36
+
37
+ // Recorrido
38
+
39
+ for ( let i = 0 ; i < cadena . length ; i ++ ) {
40
+ console . log ( "Carácter en posición" , i , ":" , cadena [ i ] ) ;
41
+ }
42
+
43
+ // Conversión a mayúsculas y minúsculas
44
+ console . log ( "Mayúsculas:" , cadena . toUpperCase ( ) ) ;
45
+ console . log ( "Minúsculas:" , cadena . toLowerCase ( ) ) ;
46
+
47
+ // Reemplazo
48
+ let cadenaReemplazada = cadena . replace ( "mundo" , "javascript" ) ;
49
+ console . log ( "Reemplazo:" , cadenaReemplazada ) ;
50
+
51
+ // División
52
+ let palabras = cadena . split ( " " ) ;
53
+ console . log ( "División por espacio:" , palabras ) ;
54
+
55
+ // Unión
56
+ let nuevaCadenaUnida = palabras . join ( ":) " ) ;
57
+ console . log ( "Unión con guiones:" , nuevaCadenaUnida ) ;
58
+
59
+ // Interpolación
60
+
61
+ let lenguaje = "JavaScript" ;
62
+ console . log ( `El lenguaje es ${ lenguaje } ` ) ;
63
+
64
+ // Verificación
65
+
66
+ let contieneHola = cadena . includes ( "Hola" ) ;
67
+ console . log ( "Contiene 'Hola':" , contieneHola ) ;
68
+
69
+ // Dificultad extra
70
+
71
+ function programa ( cadena1 , cadena2 ) {
72
+ function esPalindromo ( cadena1 , cadena2 ) {
73
+ return cadena1 . toLowerCase ( ) === cadena2 . split ( "" ) . reverse ( ) . join ( "" ) . toLowerCase ( ) ;
74
+ }
75
+ console . log ( "Es palíndromo:" , esPalindromo ( cadena1 , cadena2 ) ) ;
76
+
77
+ function esAnagrama ( cadena1 , cadena2 ) {
78
+ return cadena1 . toLowerCase ( ) . split ( "" ) . sort ( ) . join ( "" ) === cadena2 . toLowerCase ( ) . split ( "" ) . sort ( ) . join ( "" )
79
+ }
80
+ console . log ( "Es anagrama:" , esAnagrama ( cadena1 , cadena2 ) ) ;
81
+
82
+ function esIsograma ( cadena1 , cadena2 ) {
83
+ let caracteres = { } ;
84
+
85
+ for ( let i = 0 ; i < cadena1 . length ; i ++ ) {
86
+ if ( caracteres [ cadena1 [ i ] . toLowerCase ( ) ] ) {
87
+ return false ;
88
+ }
89
+ caracteres [ cadena1 [ i ] ] = true ;
90
+ }
91
+
92
+ for ( let i = 0 ; i < cadena2 . length ; i ++ ) {
93
+ if ( caracteres [ cadena2 [ i ] . toLowerCase ( ) ] ) {
94
+ return false ;
95
+ }
96
+ caracteres [ cadena2 [ i ] ] = true ;
97
+ }
98
+
99
+ return true ;
100
+ }
101
+ console . log ( "Es isograma:" , esIsograma ( cadena1 , cadena2 ) ) ;
102
+ }
103
+
104
+
105
+ programa ( "Hola" , "aloh" ) ;
106
+ programa ( "Dart" , "Go" ) ;
0 commit comments