Skip to content

Commit 81e9cfd

Browse files
author
Maksumi Murakami
authored
Merge pull request #7 from javascript-tutorial/master
Update
2 parents cde00e0 + e67f340 commit 81e9cfd

File tree

39 files changed

+536
-516
lines changed

39 files changed

+536
-516
lines changed

1-js/02-first-steps/05-types/article.md

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
# Tipos de datos
22

3-
Una variable en JavaScript puede contener cualquier dato. Una variable puede ser una cadena en un momento dado y en otro, un número:
3+
Un valor en JavaScript siempre es de cierto tipo. Por ejemplo, un string(cadena de caracteres) o un número.
4+
5+
Hay ocho tipos de datos básicos en JavaScript. Aquí, los cubriremos en general y en los próximos capítulos hablaremos de cada uno de ellos en detalle.
6+
7+
Podemos poner cualquier tipo en una variable. Por ejemplo, una variable puede en un momento ser un string y luego almacenar un número:
48

59
```js
610
// no hay error
@@ -10,7 +14,6 @@ message = 123456;
1014

1115
Los lenguajes de programación que permiten estas cosas se denominan "dinámicamente tipeados", lo que significa que hay tipos de datos, pero las variables no están vinculadas a ninguno de ellos.
1216

13-
Hay siete tipos de datos básicos en JavaScript. Aquí, los cubriremos en general y en los próximos capítulos hablaremos de cada uno de ellos detalladamente.
1417

1518
## Un number
1619
```js
@@ -62,6 +65,27 @@ Los valores numéricos especiales pertenecen formalmente al tipo "número". Por
6265

6366
Veremos más sobre el trabajo con números en el capítulo <info:number>.
6467

68+
## BigInt
69+
70+
En JavaScript, el tipo "número" no puede representar valores enteros mayores que <code> (2 <sup> 53 </sup> -1) </code> (eso es `9007199254740991`), o menor que <code> - (2 <sup> 53 </sup> -1) </code> para negativos. Es una limitación técnica causada por su representación interna.
71+
72+
Para la mayoría de los propósitos es suficiente, pero a veces necesitamos números realmente grandes, e.j. para criptografía o marcas de tiempo de precisión de microsegundos.
73+
74+
`BigInt` se agregó recientemente al lenguaje para representar enteros de longitud arbitraria.
75+
76+
Un valor `BigInt` se crea agregando `n` al final de un entero:
77+
78+
```js
79+
// la "n" al final significa que es un BigInt
80+
const bigInt = 1234567890123456789012345678901234567890n;
81+
```
82+
83+
Como los números `BigInt` rara vez se necesitan, no los cubrimos aquí, sino que les dedicamos un capítulo separado <info: bigint>. Léalo cuando necesite números tan grandes.
84+
85+
```smart header="Problemas de compatibilidad"
86+
En este momento, `BigInt` es compatible con Firefox / Chrome / Edge, pero no con Safari / IE.
87+
```
88+
6589
## Un string
6690

6791
Un string (cadena de caracteres) en JavaScript debe estar encerrado entre comillas.
@@ -226,9 +250,10 @@ Las últimas tres líneas pueden necesitar una explicación adicional:
226250

227251
## Resumen
228252

229-
Hay 7 tipos básicos en JavaScript.
253+
Hay 8 tipos básicos en JavaScript.
230254

231255
- `number` para números de cualquier tipo: enteros o en punto flotante.
256+
- `bigint` para números enteros de longitud arbitraria.
232257
- `string` para cadenas. Una cadena puede tener uno o más caracteres, no hay un tipo especial para un único carácter.
233258
- `boolean` para `verdadero`/`falso`.
234259
- `null` para valores desconocidos -- un tipo independiente que tiene un solo valor `nulo`.

1-js/02-first-steps/06-alert-prompt-confirm/article.md

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,18 @@
11
# Interacción: alert, prompt, confirm
22

3-
Esta parte del tutorial pretende cubrir JavaScript "como es", sin ajustes específicos del entorno.
4-
5-
Pero como seguiremos utilizando el navegador como entorno de demostración, deberíamos conocer al menos algunas de sus funciones de la interfaz de usuario. En este capítulo, nos familiarizaremos con las funciones del navegador `alert`, `prompt` y `confirm`.
3+
Como usaremos el navegador como nuestro entorno de demostración, veamos un par de funciones para interactuar con el usuario: `alert`,` prompt` y `confirm`.
64

75
## alert
86

9-
Sintaxis:
10-
11-
```js
12-
alert(mensaje);
13-
```
14-
15-
Esto muestra un mensaje y detiene la ejecución del script hasta que el usuario pulsa "OK".
7+
Este ya lo hemos visto. Muestra un mensaje y espera a que el usuario presione "Aceptar".
168

179
Por ejemplo:
1810

1911
```js run
20-
alert("Hola");
12+
alert("Hello");
2113
```
2214

23-
La mini-ventana con el mensaje se llama *ventana modal*. La palabra "modal" significa que el usuario no puede interactuar con el resto de la página, presionar otros botones, etc. hasta que no se haya ocupado de la ventana. En este caso, hasta que pulse "OK".
15+
La mini ventana con el mensaje se llama * ventana modal *. La palabra "modal" significa que el visitante no puede interactuar con el resto de la página, presionar otros botones, etc., hasta que se haya ocupado de la ventana. En este caso, hasta que presionen "OK".
2416

2517
## prompt
2618

@@ -38,7 +30,7 @@ Muestra una ventana modal con un mensaje de texto, un campo de entrada para el v
3830
`default`
3931
: Un segundo parámetro opcional, el valor inicial del campo de entrada.
4032

41-
El usuario puede escribir algo en el campo de entrada y pulsar OK. O puede cancelar la entrada pulsando CANCELAR o presionando la tecla `key:Esc`.
33+
El usuario puede escribir algo en el campo de entrada de solicitud y presionar OK. Luego obtenemos ese texto en el `resultado`. O pueden cancelar la entrada presionando Cancelar o presionando la tecla `: Esc`, luego obtenemos `null` como el `result`.
4234

4335
La llamada a `prompt` retorna el texto del campo de entrada o `null` si la entrada fue cancelada.
4436

@@ -50,7 +42,7 @@ let age = prompt ('¿Cuántos años tienes?', 100);
5042
alert(`Tienes ${age} años!`); //Tienes 100 años!
5143
```
5244

53-
````warn header="En IE: siempre proporciona un `predeterminado`"
45+
````warn header="En IE: siempre proporciona un *predeterminado*"
5446
El segundo parámetro es opcional, pero si no lo proporcionamos, Internet Explorer insertará el texto `"undefined"` en el prompt.
5547
5648
Ejecuta este código en Internet Explorer para verlo:

1-js/02-first-steps/09-comparison/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ En Javascript se escriben así:
66

77
- Mayor/menor que: <code>a &gt; b</code>, <code>a &lt; b</code>.
88
- Mayor/menor o igual que: <code>a &gt;= b</code>, <code>a &lt;= b</code>.
9-
- Igual: `a == b` (ten en cuenta el doble signo `=`. Un solo símbolo `a = b` significaría una asignación).
9+
- Igual: `a == b` (ten en cuenta el doble signo `==`. Un solo símbolo `a = b` significaría una asignación).
1010
- Distinto. En matemáticas la notación es <code>&ne;</code>, pero en JavaScript se escribe como una asignación con un signo de exclamación delante: <code>a != b</code>.
1111

1212
En este artículo, aprenderemos más sobre los diferentes tipos de comparaciones, cómo las realiza JavaScript, incluidas las peculiaridades importantes.

1-js/02-first-steps/12-nullish-coalescing-operator/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ En el caso de `height ?? 100` este retorna `100` solo si `height` es exactamente
6262
6363
## Precedencia
6464
65-
La precedencia del operador `??` es bastante baja: `7` en la [Tabla MDN](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Operadores/Operator_Precedence#Table).
65+
La precedencia del operador `??` es bastante baja: `5` en la [Tabla MDN](https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Operadores/Operator_Precedence#Table).
6666
6767
Es más baja que en la mayoría de los operadores y un poco más alta que `=` y `?`.
6868

1-js/04-object-basics/01-object/2-hello-object/task.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@ importance: 5
22

33
---
44

5-
# Hello, object
5+
# Hola, objeto
66

7-
Write the code, one line for each action:
8-
9-
1. Create an empty object `user`.
10-
2. Add the property `name` with the value `John`.
11-
3. Add the property `surname` with the value `Smith`.
12-
4. Change the value of the `name` to `Pete`.
13-
5. Remove the property `name` from the object.
7+
Escribe el código, una línea para cada acción:
148

9+
1. Crea un objeto `user` vacío.
10+
2. Agrega la propiedad `name` con el valor `John`.
11+
3. Agrega la propiedad `surname` con el valor `Smith`.
12+
4. Cambia el valor de `name` a `Pete`.
13+
5. Remueve la propiedad `name` del objeto.

1-js/04-object-basics/01-object/3-is-empty/_js.view/solution.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
function isEmpty(obj) {
22
for (let key in obj) {
3-
// if the loop has started, there is a property
3+
// Si el bucle ha comenzado quiere decir que sí hay al menos una propiedad
44
return false;
55
}
66
return true;

1-js/04-object-basics/01-object/3-is-empty/_js.view/test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
describe("isEmpty", function() {
2-
it("returns true for an empty object", function() {
2+
it("retorna true para un objeto vacío", function() {
33
assert.isTrue(isEmpty({}));
44
});
55

6-
it("returns false if a property exists", function() {
6+
it("retorna false si existe una propiedad", function() {
77
assert.isFalse(isEmpty({
88
anything: false
99
}));
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
Just loop over the object and `return false` immediately if there's at least one property.
1+
Solo crea un bucle sobre el objeto y, si hay al menos una propiedad, devuelve `false` inmediatamente.

1-js/04-object-basics/01-object/3-is-empty/task.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ importance: 5
22

33
---
44

5-
# Check for emptiness
5+
# Verificar los vacíos
66

7-
Write the function `isEmpty(obj)` which returns `true` if the object has no properties, `false` otherwise.
7+
Escribe la función `isEmpty(obj)` que devuelva el valor `true` si el objeto no tiene propiedades, en caso contrario `false`.
88

9-
Should work like that:
9+
Debería funcionar así:
1010

1111
```js
1212
let schedule = {};
1313

1414
alert( isEmpty(schedule) ); // true
1515

16-
schedule["8:30"] = "get up";
16+
schedule["8:30"] = "Hora de levantarse";
1717

1818
alert( isEmpty(schedule) ); // false
1919
```

1-js/04-object-basics/01-object/5-sum-object/task.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ importance: 5
22

33
---
44

5-
# Sum object properties
5+
# Suma de propiedades de un objeto
66

7-
We have an object storing salaries of our team:
7+
Tenemos un objeto que almacena los salarios de nuestro equipo:
88

99
```js
1010
let salaries = {
@@ -14,6 +14,6 @@ let salaries = {
1414
}
1515
```
1616

17-
Write the code to sum all salaries and store in the variable `sum`. Should be `390` in the example above.
17+
Escribe el código para sumar todos los salarios y almacenarl el resultado en la variable `sum`. En el ejemplo de arriba nos debería dar `390`.
1818

19-
If `salaries` is empty, then the result must be `0`.
19+
Si `salaries` está vacio entonces el resultado será `0`.

0 commit comments

Comments
 (0)