You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/01-getting-started/1-intro/article.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -15,7 +15,7 @@ En este aspecto, JavaScript es muy diferente a otro lenguaje llamado [Java](<htt
15
15
```smart header="¿Por qué se llama <u>Java</u>Script?"
16
16
Cuando JavaScript fue creado, inicialmente tenía otro nombre: "LiveScript". Pero Java era muy popular en ese momento, así que se decidió que el posicionamiento de un nuevo lenguaje como un "Hermano menor" de Java ayudaría.
17
17
18
-
Pero a medida que evolucionaba, JavaScript se convirtió en un lenguaje completamente independiente con su propia especificación llamada [ECMAScript](https://es.wikipedia.org/wiki/ECMAScript), y ahora no tiene ninguna relación con Java.
18
+
Pero a medida que evolucionaba, JavaScript se convirtió en un lenguaje completamente independiente con su propia especificación llamada [ECMAScript](https://es.wikipedia.org/wiki/ECMAScript), y ahora no tiene ninguna relación con Java.
19
19
```
20
20
21
21
Hoy, JavaScript puede ejecutarse no solo en los navegadores, sino también en servidores o incluso en cualquier dispositivo que cuente con un programa especial llamado [El motor o intérprete de JavaScript](https://es.wikipedia.org/wiki/Int%C3%A9rprete_de_JavaScript).
Todas estas funciones son *modales*, pausan la ejecución del código y evitan que el visitante interactúe con la página hasta que responda.
@@ -144,7 +144,7 @@ Asignaciones
144
144
: He aqui una asignacion simple: `a = b` y una combinada `a *= 2`.
145
145
146
146
Operador bit a bit
147
-
: Los operadores bit a bit funcionan con enteros de 32 bits al más bajo nivel, el de bit: mire la [documentación](mdn:/JavaScript/Reference/Operators/Bitwise_Operators) cuando sea necesario.
147
+
: Los operadores bit a bit funcionan con enteros de 32 bits al más bajo nivel, el de bit: mire la [documentación](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators) cuando sea necesario.
148
148
149
149
Condicional
150
150
: El único operador con 3 parametros: `cond ? resultA : resultB`. Sí `cond` es verdadera, devuelve `resultA`, de lo contrario `resultB`.
Copy file name to clipboardExpand all lines: 1-js/04-object-basics/02-object-copy/article.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -133,7 +133,7 @@ clone.name = "Pete"; // cambiamos datos en él
133
133
alert( user.name ); // John aún está en el objeto original
134
134
```
135
135
136
-
También podemos usar el método [Object.assign](mdn:js/Object/assign) para ello.
136
+
También podemos usar el método [Object.assign](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Object/assign) para ello.
Copy file name to clipboardExpand all lines: 1-js/04-object-basics/03-garbage-collection/article.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,7 @@ Simple, los valores "alcanzables" son aquellos que son accesibles o se pueden ut
25
25
26
26
Por ejemplo, si hay un objeto en una variable local, y ese objeto tiene una propiedad que hace referencia a otro objeto, ese objeto se considera accesible. Y aquellos a los que hace referencia también son accesibles. Ejemplos detallados a seguir.
27
27
28
-
Hay un proceso en segundo plano en el motor de JavaScript que se llama [recolector de basura](https://es.wikipedia.org/wiki/Recolector_de_basura). Monitorea todos los objetos y elimina aquellos que se han vuelto inalcanzables.
28
+
Hay un proceso en segundo plano en el motor de JavaScript que se llama [recolector de basura](https://es.wikipedia.org/wiki/Recolector_de_basura). Monitorea todos los objetos y elimina aquellos que se han vuelto inalcanzables.
Esto forma parte del concepto general de "ocultamiento". Si otro script o si otra librería itera el objeto este no accesará a la clave de Symbol.
163
163
164
-
En contraste, [Object.assign](mdn:js/Object/assign) copia las claves tanto del string como las del symbol:
164
+
En contraste, [Object.assign](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Object/assign) copia las claves tanto del string como las del symbol:
165
165
166
166
```js run
167
167
let id =Symbol("id");
@@ -274,4 +274,4 @@ Symbols se utilizan principalmente en dos casos:
274
274
275
275
2. Existen diversos symbols del sistema que utiliza Javascript, a los cuales podemos accesar por medio de `Symbol.*`. Podemos usarlos para alterar algunos comportamientos. Por ejemplo, más adelante en el tutorial, usaremos `Symbol.iterator` para [iterables](info:iterable), `Symbol.toPrimitive` para configurar [object-to-primitive conversion](info:object-toprimitive).
276
276
277
-
Técnicamente, los symbols no están 100% ocultos. Existe un método incorporado [Object.getOwnPropertySymbols(obj)](mdn:js/Object/getOwnPropertySymbols) que nos permite obtener todos los symbols. También existe un método llamado [Reflect.ownKeys(obj)](mdn:js/Reflect/ownKeys) que devuelve *todas* las claves de un objeto, incluyendo las que son de tipo symbol. Por lo tanto, no están realmente ocultos, aunque la mayoría de las librerías, los métodos incorporados y las construcciones de sintaxis se adhieren a un acuerdo común de que sí lo están. Y el que explícitamente llama a los métodos antes mencionados probablemente entiende bien lo que está haciendo.
277
+
Técnicamente, los symbols no están 100% ocultos. Existe un método incorporado [Object.getOwnPropertySymbols(obj)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Object/getOwnPropertySymbols) que nos permite obtener todos los symbols. También existe un método llamado [Reflect.ownKeys(obj)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Reflect/ownKeys) que devuelve *todas* las claves de un objeto, incluyendo las que son de tipo symbol. Por lo tanto, no están realmente ocultos, aunque la mayoría de las librerías, los métodos incorporados y las construcciones de sintaxis se adhieren a un acuerdo común de que sí lo están. Y el que explícitamente llama a los métodos antes mencionados probablemente entiende bien lo que está haciendo.
Copy file name to clipboardExpand all lines: 1-js/05-data-types/02-number/article.md
+1-1
Original file line number
Diff line number
Diff line change
@@ -332,7 +332,7 @@ Ten en cuenta que un valor vacío o un string de solo espacios es tratado como `
332
332
333
333
```smart header="Comparación con `Object.is`"
334
334
335
-
Hay un método especial incorporado [Object.is](mdn:js/Object/is) que compara valores como el `===`, pero es más confiable para dos casos extremos:
335
+
Hay un método especial incorporado [Object.is](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Object/is) que compara valores como el `===`, pero es más confiable para dos casos extremos:
336
336
337
337
1. Funciona con `NaN`: `Object.is(NaN, NaN) ===true`, lo que es una buena cosa.
338
338
2. Los valores `0` y `-0` son diferentes: `Object.is(0, -0) ===false`. `false` es técnicamente correcto, porque internamente el número puede tener el bit de signo diferente incluso aunque todos los demás sean ceros.
Las comillas simples y dobles provienen de la creación de lenguaje en tiempos ancestrales, cuando la necesidad de múltiples líneas no era tomada en cuenta. Los backticks aparecieron mucho después y por ende son más versátiles.
52
52
53
-
Los backticks además nos permiten especificar una "función de plantilla" antes del primer backtick. La sintaxis es: <code>func`string`</code>. La función `func` es llamada automáticamente, recibe el string y la expresión insertada y los puede procesar. Eso se llama "plantillas etiquetadas". Esta característica hace que sea más fácil implementar plantillas personalizadas, pero es raramente usada en la práctica. Puedes leer más sobre esto en [docs](mdn:/JavaScript/Reference/Template_literals#Tagged_templates).
53
+
Los backticks además nos permiten especificar una "función de plantilla" antes del primer backtick. La sintaxis es: <code>func`string`</code>. La función `func` es llamada automáticamente, recibe el string y la expresión insertada y los puede procesar. Eso se llama "plantillas etiquetadas". Esta característica hace que sea más fácil implementar plantillas personalizadas, pero es raramente usada en la práctica. Puedes leer más sobre esto en [docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#Tagged_templates).
54
54
55
55
## Caracteres especiales
56
56
@@ -144,7 +144,7 @@ Por favor notar que `str.length` es una propiedad numérica, no una función. No
144
144
145
145
## Accediendo caracteres
146
146
147
-
Para acceder a un carácter en la posición `pos`, se debe usar paréntesis cuadrados `[pos]` o llamar al método [str.charAt(pos)](mdn:js/String/charAt). El primer carácter comienza desde la posición cero:
147
+
Para acceder a un carácter en la posición `pos`, se debe usar paréntesis cuadrados `[pos]` o llamar al método [str.charAt(pos)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/charAt). El primer carácter comienza desde la posición cero:
148
148
149
149
```js run
150
150
let str = `Hola`;
@@ -205,7 +205,7 @@ En la sección siguiente veremos más ejemplos de esto.
205
205
206
206
## Cambiando mayúsculas y minúsuculas
207
207
208
-
Los métodos [toLowerCase()](mdn:js/String/toLowerCase) y [toUpperCase()](mdn:js/String/toUpperCase) cambian los caracteres a minúscula y mayúscula respectivamente:
208
+
Los métodos [toLowerCase()](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/toLowerCase) y [toUpperCase()](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/toUpperCase) cambian los caracteres a minúscula y mayúscula respectivamente:
209
209
210
210
```js run
211
211
alert('Interfaz'.toUpperCase()); // INTERFAZ
@@ -224,7 +224,7 @@ Existen muchas formas de buscar por subcadenas de caracteres dentro de una caden
224
224
225
225
### str.indexOf
226
226
227
-
El primer método es [str.indexOf(substr, pos)](mdn:js/String/indexOf).
227
+
El primer método es [str.indexOf(substr, pos)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/indexOf).
228
228
229
229
Este busca un `substr` en `str`, comenzando desde la posición entregada `pos`, y retorna la posición donde es encontrada la coincidencia o `-1` en caso de no encontrar nada.
Existe también un método similar [str.lastIndexOf(substr, position)](mdn:js/String/lastIndexOf) que busca desde el final del string hasta el comienzo.
284
+
Existe también un método similar [str.lastIndexOf(substr, position)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/lastIndexOf) que busca desde el final del string hasta el comienzo.
285
285
286
286
Este imprimirá las ocurrencias en orden invertido.
287
287
```
@@ -351,7 +351,7 @@ Ahora podemos ver este truco solo en código viejo, porque JavaScript moderno pr
351
351
352
352
### includes, startsWith, endsWith
353
353
354
-
El método más moderno [str.includes(substr, pos)](mdn:js/String/includes) retorna `true/false` dependiendo si `str` contiene `substr` dentro.
354
+
El método más moderno [str.includes(substr, pos)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/includes) retorna `true/false` dependiendo si `str` contiene `substr` dentro.
355
355
356
356
Es la opción correcta si lo que necesitamos es encontrar el `substr` pero no necesitamos la posición.
alert('Midget'.includes('id', 3)); // false, desde la posición 3 no hay "id"
369
369
```
370
370
371
-
Los métodos [str.startsWith](mdn:js/String/startsWith) (comienza con) y [str.endsWith](mdn:js/String/endsWith) (termina con) hacen exactamente lo que dicen:
371
+
Los métodos [str.startsWith](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/startsWith) (comienza con) y [str.endsWith](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/endsWith) (termina con) hacen exactamente lo que dicen:
372
372
373
373
```js run
374
374
alert('Widget'.startsWith('Wid')); // true, "Widget" comienza con "Wid"
@@ -538,7 +538,7 @@ Por suerte, todos los navegadores modernos (IE10- requiere adicionalmente la bib
538
538
539
539
Este provee un método especial para comparar strings en distintos lenguajes, siguiendo sus reglas.
540
540
541
-
El llamado [str.localeCompare(str2)](mdn:js/String/localeCompare):
541
+
El llamado [str.localeCompare(str2)](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/localeCompare):
542
542
543
543
- Retorna `1` si `str` es mayor que `str2` de acuerdo a las reglas del lenguaje.
Este método tiene dos argumentos adicionales especificados en [la documentación](mdn:js/String/localeCompare), la cual le permite especificar el languaje (por defeto lo toma del entorno) y configura reglas adicionales como sensibilidad a las mayúsculas y minúsculas o si debe `"a"` y `"á"` ser tratadas como iguales, etc.
553
+
Este método tiene dos argumentos adicionales especificados en [la documentación](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/localeCompare), la cual le permite especificar el languaje (por defeto lo toma del entorno) y configura reglas adicionales como sensibilidad a las mayúsculas y minúsculas o si debe `"a"` y `"á"` ser tratadas como iguales, etc.
554
554
555
555
## Internals, Unicode
556
556
@@ -578,7 +578,7 @@ Notar que los pares sustitutos no existían en el tiempo que JavaScript fue crea
578
578
579
579
De hecho, tenemos un solo símbolo en cada string más arriba, pero el `length` (largo) muestra `2`.
580
580
581
-
`String.fromCodePoint` y `str.codePointAt` son algunos métodos extraños que tratan con pares sustitutos. Aparecieron recientemente en el lenguaje. Antes de ellos, existían sólo [String.fromCharCode](mdn:js/String/fromCharCode) y [str.charCodeAt](mdn:js/String/charCodeAt). Estos métodos son actualmente lo mismo que `fromCodePoint/codePointAt`, pero no funcionan con pares sustitutos.
581
+
`String.fromCodePoint` y `str.codePointAt` son algunos métodos extraños que tratan con pares sustitutos. Aparecieron recientemente en el lenguaje. Antes de ellos, existían sólo [String.fromCharCode](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/fromCharCode) y [str.charCodeAt](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/charCodeAt). Estos métodos son actualmente lo mismo que `fromCodePoint/codePointAt`, pero no funcionan con pares sustitutos.
582
582
583
583
Obtener un símbolo puede ser dificil, ya que los pares substitutos son tratados como dos caracteres:
584
584
@@ -641,7 +641,7 @@ alert( s1 == s2 ); // false aunque los caracteres se ven idénticos (?!)
641
641
642
642
Para resolver esto, existe un algoritmo de "normalización Unicode" que lleva cada cadena a la forma "normal".
643
643
644
-
Este es implementado por [str.normalize()](mdn:js/String/normalize).
644
+
Este es implementado por [str.normalize()](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String/normalize).
@@ -674,6 +674,6 @@ Existen varios otros métodos útiles en cadenas:
674
674
675
675
-`str.trim()` -- remueve ("recorta") espacios desde el comienzo y final de un string.
676
676
-`str.repeat(n)` -- repite el string `n` veces.
677
-
- ...y más. Mira el [manual](mdn:js/String) para más detalles.
677
+
- ...y más. Mira el [manual](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/String) para más detalles.
678
678
679
679
Strings también tienen métodos con expresiones regulares para buscar/reemplazar. Es un tema importante, así que es explicado en su propia sección <info:regular-expressions> .
0 commit comments