ES6 Review-let & const

1 、 ES5 vs ES6

    ES significa ECMAScript. ECMAScript es una especificación del lenguaje de script Js.

    ES5 es la quinta edición de ECMAScript, que se completó en 2009, y las especificaciones se han implementado en los navegadores actuales.

    ES6 es la sexta edición de ECMAScript, que se completó en 2015. Este estándar se ha implementado en la mayoría de los navegadores.

    ES6 se refiere al estándar de lenguaje JS de próxima generación, incluidos ES2015 a ES2020, etc. ES2015 es equivalente a ES6 de forma predeterminada. ES5 se refiere al estándar de lenguaje de la generación anterior. ES2015 puede entenderse como el límite de tiempo entre ES5 y ES6.

 

2 、 Babel

    Babel es un transcodificador. ES6 se implementa en la mayoría de los navegadores. Para las plataformas que no implementan ES6, puede usar Babel para convertir ES6 a ES5 para su ejecución.

 

3 、 let && const

 

  • dejar

      let y var son similares, la función es declarar una variable.

          (1) Alcance diferente

      Let es un alcance de bloque, y el alcance solo tiene efecto en su área de bloque de código; var define variables globales, que aún se pueden llamar fuera del bloque de código.

 

para (sea i = 0; i <1; i ++) { 
    var a = 12; 
    dejar b = i; 
} 

a // 12 
b // Error de referencia no capturado: b no está definido

 

    (2) Promoción variable

      La promoción de variables significa que la declaración de la variable se promueve a la parte superior del código, es decir, se puede llamar a la variable antes de declararla.

      El  comando let no tiene promoción de variable. Si llama a la variable definida por let antes de la declaración, obtendrá un error.

      El comando var se puede invocar a voluntad, siempre que se declare el código.

console.log (a); 
var a = 234; // undefined 

console.log (a); 
dejar a = 234; // Error: no se puede acceder a 'a' antes de la inicialización

    (3) Zona muerta temporal

      ES6 estipula que si hay let const comandos en el bloque en el bloque de código,  las variables declaradas por estos bloques en el bloque forman un alcance cerrado desde el principio .

letLa variable no está disponible hasta que la variable se declare       con el comando

// 死 区 开始
hunter = 'abc'; // ReferenceError: No se puede acceder a 'hunter' antes de la inicialización 
console.log (hunter); // ReferenceError: No se puede acceder a 'hunter' antes de la inicialización 

let hunter; 
// 死 区 结束 console.log 
(hunter); // undefined 

hunter = "QQQ"; 
console.log (cazador); // QQQ

    (4) Declaración repetida

      El comando let es diferente de la var. El comando let no permite declaraciones repetidas

var a = 1; 
var a = 2; 
una; // 2 

let a = 1; 
dejar a = 2; // SyntaxError: el identificador 'a' ya se ha declarado

  

 

  • const

    const se usa para declarar constantes. Las constantes deben inicializarse cuando se declaran. Después de la asignación inicial, el valor de la constante no cambiará.

const hunterTest = 123; 
hunterTest; // 123 

hunterTest = 666; // TypeError: asignación a variable constante.

     Const, en mi opinión, es guardar la dirección de memoria señalada por la variable, y tiene limitaciones para estructuras de datos simples como Number, String y Boolean. Sin embargo, para las variables de una estructura de datos compuesta, las variables permanecen sin cambios y los valores dentro de las variables pueden cambiar.

const aaa = 123; 
aaa = 345; // TypeError: asignación a variable constante. 


const aaaa = { 
    nombre: "YuHang" 
} 
aaaa ["GG"] = 234 // {nombre: "YuHang", GG: 234} 


var bbb = {nombre: "Lisa"}; 
aaaa = bbb; // TypeError: asignación a variable constante.

  

Supongo que te gusta

Origin www.cnblogs.com/Lyh1997/p/12746398.html
Recomendado
Clasificación