Ventajas
1. Puede leer las variables dentro de la función
2. Puede mantener estas variables locales en la memoria para lograr el intercambio de datos variables.
Desventajas
1. Debido a que el cierre causará que las variables en la función se guarden en la memoria, el consumo de memoria es muy grande, por lo que no se puede abusar del cierre, de lo contrario causará problemas de rendimiento de la página web y puede causar pérdidas de memoria en IE. La solución es eliminar todas las variables locales no utilizadas antes de salir de la función.
2. Los cierres cambiarán el valor de las variables dentro de la función principal fuera de la función principal. Entonces, si usa la función padre como un objeto, el cierre como su método público y la variable interna como su valor privado, debe tener cuidado de no Cambia aleatoriamente el valor de la variable interna de la función padre.
Enlace reimpreso: https://www.jianshu.com/p/8376170fb228