<strong>En este ejemplo no utilizo un callback ¿Seria mala practica y cual seria la diferencia pasando un callback ?</strong> <code>const...

Alexander Morales Urrea

Alexander Morales Urrea

Pregunta
student
hace 5 años

En este ejemplo no utilizo un callback ¿Seria mala practica y cual seria la diferencia pasando un callback ?

const url = `https://jsonplaceholder.typicode.com/users`; function print(result) { document.body.innerHTML = `<pre>${result}</pre>`; } //Caso 1 : function getUsuers() { const xmlhttp = new XMLHttpRequest(); xmlhttp.open("GET", url, true); xmlhttp.onreadystatechange = function () { if (this.readyState == 4 && this.status == 200) { print(this.responseText); } else { console.log(""); } }; xmlhttp.send(); }```
2 respuestas
para escribir tu comentario
    Juan Cumbe

    Juan Cumbe

    student
    hace 5 años

    Hola! Una pregunta, que representa el "this" dentro del condicional? La petición? La conexión?

    Saludos!

    Mariano Aguirre Giraldo

    Mariano Aguirre Giraldo

    student
    hace 5 años

    Hola, en ese ejemplo, el callback es manejado por

    xmlhttp.onreadystatechange
    .

    Quiere decir, que cuando se obtenga la respuesta, el objeto

    xmlhttp
    va a ir a
    onreadystatechange
    y ejecutará esa función. Así que el callback es:

    function () { if (this.readyState == 4 && this.status == 200) { console.log(this.responseText); } else { console.log(""); } };

    Por cierto, recuerda cambiar

    print
    por
    console.log

Curso de Asincronismo con JavaScript

Curso de Asincronismo con JavaScript

Apropia los conceptos fundamentales de asincronismo con JavaScript, aplica sus diferentes estructuras y desarrolla soluciones asíncronas. ¡Amplia tus conocimientos de programación aquí!

Curso de Asincronismo con JavaScript
Curso de Asincronismo con JavaScript

Curso de Asincronismo con JavaScript

Apropia los conceptos fundamentales de asincronismo con JavaScript, aplica sus diferentes estructuras y desarrolla soluciones asíncronas. ¡Amplia tus conocimientos de programación aquí!