chore(i18n,curriculum): update translations (#42568)
This commit is contained in:
@ -9,7 +9,7 @@ dashedName: global-vs--local-scope-in-functions
|
||||
|
||||
# --description--
|
||||
|
||||
Es posible tener variables <dfn>locales</dfn> y <dfn>globales</dfn> con el mismo nombre. Cuando haces esto, la variable `local` tiene precedencia sobre la variable `global`.
|
||||
Es posible tener variables <dfn>locales</dfn> y <dfn>globales</dfn> con el mismo nombre. Cuando haces esto, la variable local tiene precedencia sobre la variable global.
|
||||
|
||||
En este ejemplo:
|
||||
|
||||
@ -21,7 +21,7 @@ function myFun() {
|
||||
}
|
||||
```
|
||||
|
||||
La función `myFun` devolverá la cadena `Head` porque está presente la versión `local` de la variable.
|
||||
La función `myFun` devolverá la cadena `Head` porque está presente la versión local de la variable.
|
||||
|
||||
# --instructions--
|
||||
|
||||
|
@ -19,23 +19,23 @@ var sandwich = ["peanut butter", "jelly", "bread"]
|
||||
|
||||
# --instructions--
|
||||
|
||||
Modifica el nuevo arreglo `myArray` para que contenga tanto una `string` como un `number` (en ese orden).
|
||||
Modifica el nuevo arreglo `myArray` para que contenga tanto una cadena como un número (en ese orden).
|
||||
|
||||
# --hints--
|
||||
|
||||
`myArray` debe ser un arreglo (`array`).
|
||||
`myArray` debe ser un arreglo.
|
||||
|
||||
```js
|
||||
assert(typeof myArray == 'object');
|
||||
```
|
||||
|
||||
El primer elemento en `myArray` debe ser una cadena (`string`).
|
||||
El primer elemento en `myArray` debe ser una cadena.
|
||||
|
||||
```js
|
||||
assert(typeof myArray[0] !== 'undefined' && typeof myArray[0] == 'string');
|
||||
```
|
||||
|
||||
El segundo elemento en `myArray` debe ser un número (`number`).
|
||||
El segundo elemento en `myArray` debe ser un número.
|
||||
|
||||
```js
|
||||
assert(typeof myArray[1] !== 'undefined' && typeof myArray[1] == 'number');
|
||||
|
@ -17,7 +17,7 @@ Animal.prototype.eat = function() {
|
||||
};
|
||||
```
|
||||
|
||||
Este desafío y el siguiente cubrirán como reutilizar los métodos de `Animal's` dentro de `Bird` y `Dog` sin tener que definirlos otra vez. Se utiliza una técnica llamada herencia. Este desafío cubre el primer paso: crear una instancia del `supertype` (o objecto padre). Ya conoces una forma de crear una instancia de `Animal` utilizando el operador `new`:
|
||||
Este desafío y el siguiente cubrirán como reutilizar los métodos de `Animal` dentro de `Bird` y `Dog` sin tener que definirlos otra vez. Se utiliza una técnica llamada herencia. Este desafío cubre el primer paso: crear una instancia del `supertype` (o objecto padre). Ya conoces una forma de crear una instancia de `Animal` utilizando el operador `new`:
|
||||
|
||||
```js
|
||||
let animal = new Animal();
|
||||
@ -29,7 +29,7 @@ Hay algunas desventajas cuando se utiliza esta sintaxis para la herencia, pero s
|
||||
let animal = Object.create(Animal.prototype);
|
||||
```
|
||||
|
||||
`Object.create(obj)` crea un objeto nuevo y establece `obj` como el `prototype` del nuevo objeto. Recuerda que `prototype` es como la "receta" para crear un objecto. Al establecer el `prototype` de `animal` como el `prototype` de `Animal's`, estás dándole a la instancia `animal` la misma “receta" que a cualquier otra instancia de `Animal`.
|
||||
`Object.create(obj)` crea un objeto nuevo y establece `obj` como el `prototype` del nuevo objeto. Recuerda que `prototype` es como la "receta" para crear un objecto. Al establecer el `prototype` de `animal` como el `prototype` de `Animal`, estás dándole a la instancia `animal` la misma “receta" que a cualquier otra instancia de `Animal`.
|
||||
|
||||
```js
|
||||
animal.eat();
|
||||
|
@ -36,10 +36,10 @@ Bird.prototype.eat = function() {
|
||||
};
|
||||
```
|
||||
|
||||
Si tienes una instancia de `let duck = new Bird();` y llamas a `duck.eat()`, de esta manera es como JavaScript busca el método en la cadena de `duck’s` `prototype`:
|
||||
Si tienes una instancia de `let duck = new Bird();` y llamas a `duck.eat()`, así es como JavaScript busca el método en la cadena `prototype` de `duck`:
|
||||
|
||||
1. `duck` => ¿Está `eat()` definido aquí? No.
|
||||
2. `Bird` => ¿Está `eat()` definido aquí? => Sí. Ejecutala y detén la búsqueda.
|
||||
2. `Bird` => ¿Está `eat()` definido aquí? => Sí. Ejecútala y detén la búsqueda.
|
||||
3. `Animal` => `eat()` también está definido, pero JavaScript dejó de buscar antes de llegar a este nivel.
|
||||
4. Object => JavaScript dejó de buscar antes de llegar a este nivel.
|
||||
|
||||
|
@ -19,7 +19,7 @@ let duck = new Bird();
|
||||
duck.constructor
|
||||
```
|
||||
|
||||
Pero `duck` y todas las instancias de `Bird` deberían mostrar que fueron construidas por `Bird` y no `Animal`. Para hacer esto, puedes establecer de forma manual la propiedad constructor `Bird's` al objeto `Bird`:
|
||||
Pero `duck` y todas las instancias de `Bird` deberían mostrar que fueron construidas por `Bird` y no `Animal`. Para ello, puedes establecer manualmente la propiedad del constructor de `Bird` al objeto `Bird`:
|
||||
|
||||
```js
|
||||
Bird.prototype.constructor = Bird;
|
||||
|
@ -12,7 +12,7 @@ Dado que `numLegs` probablemente tendrán el mismo valor para todas las instanci
|
||||
|
||||
Esto puede que no sea un problema cuando sólo hay dos instancias, pero imagina si hay millones de instancias. Eso sería un montón de variables duplicadas.
|
||||
|
||||
Una mejor manera es usar `Bird’s` `prototype`. Las propiedades del `prototype` se comparten entre TODAS las instancias de `Bird`. A continuación se explica cómo añadir `numLegs` al prototipo `Bird prototype`:
|
||||
Una mejor forma es utilizar el `prototype` de `Bird`. Las propiedades del `prototype` se comparten entre TODAS las instancias de `Bird`. A continuación se explica cómo añadir `numLegs` al prototipo `Bird prototype`:
|
||||
|
||||
```js
|
||||
Bird.prototype.numLegs = 2;
|
||||
@ -45,7 +45,7 @@ assert(beagle.numLegs !== undefined);
|
||||
assert(typeof beagle.numLegs === 'number');
|
||||
```
|
||||
|
||||
`numLegs` debe ser una propiedad `prototype`, no una propiedad `own`.
|
||||
`numLegs` debe ser una propiedad `prototype`, no una propiedad directa.
|
||||
|
||||
```js
|
||||
assert(beagle.hasOwnProperty('numLegs') === false);
|
||||
|
Reference in New Issue
Block a user