ES frente a TS
ES6 es una estandarización de JS y JS es una extensión de ES.
TS es un complemento tipo para JS.
JS en Web = ES + API Web (DOM + BOM)
JS en Nodo = ES + API de Nodo (fs + Net + etc)
TS = JS + sistema de tipos
Como se muestra en la Figura 3.1 a continuación
Se introdujeron dos nuevas palabras clave let y const en ES6.
Debido a que var tiene promoción de variable, llamar a la variable antes de la definición no informará un error, pero obtendrá un valor indefinido. Esto parece no ser razonable en muchos procesos de codificación, porque está en línea con la lógica de pensamiento normal definir variables primero y luego usarlas. Por lo tanto, se introdujeron dos palabras clave: let y const.
Ninguno de ellos tiene promoción variable. Debido al mecanismo de cierre, solo tiene efecto dentro del alcance del bloque al que pertenece la ubicación de la declaración.
¿Proxy? Puede entenderse como un oyente e interceptor, que puede modificar el método original del objeto. Se puede utilizar a través del método constructor o se puede llamar como una propiedad Proxy definida dentro del objeto.
Dos formas de utilizar Proxy
¿Proxy? Pasar dos parámetros, ambos en formato de objeto. ¿El objetivo? es el objeto interceptado y el controlador contiene el método para interceptar el objetivo. Si el objeto interceptado es un objeto vacío, al llamar al constructor, puede usar el objeto construido para llamar al método de interceptación, que tendrá el mismo efecto.
Cuando el objetivo es un objeto vacío
Reflect
¿Reflect? es una nueva API que coloca los métodos del objeto Object que son internos del lenguaje. Reflejar? Objeto, es decir, obtener el método interno del objeto?
Cambie el antiguo método Object para que devuelva false en lugar de informar un error.
¿Convertir las operaciones de Objeto? en un comportamiento funcional.
Reflect? y Proxy? tienen el mismo método y los dos pueden complementarse.
La imagen es citada de Ruan Yifeng ES6
Esta operación hace que la operación de interceptación sea más razonable. La operación de interceptación se entrega a Reflect, mientras que la función de Proxy es principalmente generar registros. .
El set no repite el set.
El símbolo es único y puede usarse como clave de un objeto para evitar duplicaciones.
Generador: Internamente se puede ejecutar paso a paso a través de yeld. Devuelve un objeto {valor, hecho}.