52 lines
1.5 KiB
Markdown
52 lines
1.5 KiB
Markdown
|
---
|
||
|
title: Let and Const
|
||
|
localeTitle: Let y Const
|
||
|
---
|
||
|
## Dejar
|
||
|
|
||
|
let es similar a var pero let tiene alcance. Let solo es accesible en el nivel de bloque que se define.
|
||
|
```
|
||
|
if (true) {
|
||
|
let a = 40;
|
||
|
console.log(a); //40
|
||
|
}
|
||
|
console.log(a); // undefined
|
||
|
```
|
||
|
|
||
|
En el ejemplo anterior, la variable 'a' se define dentro de una instrucción If y, por lo tanto, no es accesible desde fuera de la función.
|
||
|
|
||
|
Otro ejemplo:
|
||
|
```
|
||
|
let a = 50;
|
||
|
let b = 100;
|
||
|
if (true) {
|
||
|
let a = 60;
|
||
|
var c = 10;
|
||
|
console.log(a/c); // 6
|
||
|
console.log(b/c); // 10
|
||
|
}
|
||
|
console.log(c); // 10
|
||
|
console.log(a); // 50
|
||
|
```
|
||
|
|
||
|
## Const
|
||
|
|
||
|
Const se utiliza para asignar un valor constante a la variable. Y el valor no puede ser cambiado. Está arreglado.
|
||
|
```
|
||
|
const a = 50;
|
||
|
a = 60; // shows error. You cannot change the value of const.
|
||
|
const b = "Constant variable";
|
||
|
b = "Assigning new value"; // shows error.
|
||
|
```
|
||
|
|
||
|
Considere otro ejemplo.
|
||
|
```
|
||
|
const LANGUAGES = ['Js', 'Ruby', 'Python', 'Go'];
|
||
|
LANGUAGES = "Javascript"; // shows error.
|
||
|
LANGUAGES.push('Java'); // Works fine.
|
||
|
console.log(LANGUAGES); // ['Js', 'Ruby', 'Python', 'Go', 'Java']
|
||
|
```
|
||
|
|
||
|
Esto puede ser un poco confuso.
|
||
|
|
||
|
Considera de esta manera. Cuando defina una variable const, Javascript hace referencia a la dirección del valor a la variable. En nuestro ejemplo, la variable 'IDIOMAS' en realidad hace referencia a la memoria asignada a la matriz. Por lo tanto, no puede cambiar la variable para hacer referencia a otra ubicación de memoria más adelante. A lo largo del programa solo hace referencia a la matriz.
|