Argumentos en las funciones de flecha de ES6: Aclaración oficial
En las funciones de flecha de ES6, el comportamiento de la palabra clave argumentos ha sido un tema de debate. Algunos navegadores y plataformas (como Chrome, Firefox y Node) se desvían de las recomendaciones iniciales de TC39, lo que genera dudas sobre la interpretación correcta de la especificación.
Según la especificación oficial de ES6, las funciones de flecha no tienen su propios argumentos vinculantes dentro de su ámbito. Cuando se invocan, las funciones de flecha no crean un objeto de argumentos como parte del proceso de creación de instancias de declaración.
Esto contradice el comportamiento observado en navegadores como Chrome, Firefox y Node, que crean un objeto de argumentos en las funciones de flecha. Como resultado, estos navegadores brindan acceso incorrectamente a los argumentos pasados a la función adjunta.
Babel, por otro lado, sigue la especificación oficial al generar un "Error de referencia" cuando se accede a los argumentos dentro de una función de flecha. Esto se alinea con el comportamiento previsto de las funciones de flecha como funciones que adoptan su alcance principal para el acceso a los argumentos.
Por lo tanto, la comprensión correcta es que las funciones de flecha no tienen un enlace de argumentos dedicado. Los desarrolladores deben usar el objeto de argumentos proporcionado por la función adjunta para acceder a los argumentos pasados cuando trabajan con funciones de flecha.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3