Un breve análisis de la solución a los cambios variables causados por la ejecución asincrónica de funciones de JavaScript
for (var i = 0; i <3; i ++) {setTimeOut (function () {console.log (i)}, 0);} Salida de consola: 333Esto se debe a que cuando se ejecuta el método, el bucle for se ha ejecutado y cada vez que se ejecuta, es 3 en lugar de 1-2-3. En este momento, podemos usar la función de ejecución inmediata para crear una copia de la variable para cada bucle para el temporizador para llamar para resolver este problema.
for (var i = 0; i <3; i ++) {setTimeOut ((function () {var _i = i; return function () {console.log (_i)};}) (), 0); } Salida de la consola: 123El breve análisis anterior del problema de resolver cambios variables causados por la ejecución asincrónica de las funciones de JavaScript es todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.