JavaScript sincrónico: como sugiere el nombre, sincrónico significa estar en una secuencia, es decir, cada declaración del código se ejecuta una por una. Entonces, básicamente, una declaración tiene que esperar a que se ejecute la declaración anterior.
Entendamos esto con la ayuda de un ejemplo.
Ejemplo:
<script> document.write("Hi"); // First document.write("<br>"); document.write("Mayukh") ;// Second document.write("<br>"); document.write("How are you"); // Third </script>
Producción:
En el fragmento de código anterior, la primera línea del código Hi
se registrará primero, luego se registrará la segunda línea Mayukh
y luego, una vez completada, se registrará la tercera línea How are you
.
Entonces, como podemos ver, los códigos funcionan en una secuencia. Cada línea de código espera a que la anterior se ejecute primero y luego se ejecuta.
JavaScript asíncrono: el código asíncrono permite que el programa se ejecute inmediatamente, mientras que el código síncrono bloqueará la ejecución del código restante hasta que finalice el actual. Puede que esto no parezca un gran problema, pero cuando lo ve en una imagen más grande, se da cuenta de que puede retrasar la interfaz de usuario.
Veamos el ejemplo de cómo se ejecuta Asynchronous JavaScript.
<script> document.write("Hi"); document.write("<br>"); setTimeout(() => { document.write("Let us see what happens"); }, 2000); document.write("<br>"); document.write("End"); document.write("<br>"); </script>
Producción:
Entonces, lo que hace el código es primero iniciar sesión y Hi
luego, en lugar de ejecutar la setTimeout
función, inicia sesión End
y luego ejecuta la setTimeout
función.
Al principio, como de costumbre, la Hi
declaración se registró. Como usamos navegadores para ejecutar JavaScript, existen API web que manejan estas cosas para los usuarios. Entonces, lo que hace JavaScript es pasar la setTimeout
función en dicha API web y luego seguimos ejecutando nuestro código como de costumbre. Por lo tanto, no bloquea la ejecución del resto del código y, después de que todo el código se ejecuta, se envía a la pila de llamadas y finalmente se ejecuta. Esto es lo que sucede en JavaScript asíncrono.
Publicación traducida automáticamente
Artículo escrito por mayukh_bagchi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA