Nombra las herramientas que has utilizado para escribir llamadas asíncronas.
sobes.tech AI
Respuesta de la IA
JavaScript ofrece varias herramientas para trabajar con llamadas asíncronas:
-
Funciones Callback: Enfoque clásico, donde una función se pasa como argumento a otra función y se ejecuta después de que la operación asíncrona termina.
-
Promesas (Promises): Objetos que representan un valor futuro o un error de una operación asíncrona. Simplifican la cadena de llamadas asíncronas y el manejo de errores.
// Ejemplo de uso de promesas fetch('/api/data') .then(response => response.json()) // Manejo de respuesta exitosa .then(data => console.log(data)) // Trabajar con los datos recibidos .catch(error => console.error('Error:', error)); // Manejo de errores -
Async/await: Azúcar sintáctico sobre las promesas, que permite escribir código asíncrono en un estilo más sincrónico, mejorando la legibilidad.
// Ejemplo de uso de async/await async function fetchData() { try { const response = await fetch('/api/data'); // Espera a que fetch termine const data = await response.json(); // Espera a parsear JSON console.log(data); } catch (error) { console.error('Error:', error); } } fetchData(); -
XMLHttpRequest (XHR): API básica para realizar solicitudes HTTP en el navegador. Más de bajo nivel en comparación con
fetchy requiere más código para manejar.// Ejemplo de uso de XMLHttpRequest const xhr = new XMLHttpRequest(); xhr.open('GET', '/api/data', true); // Solicitud asíncrona xhr.onload = function() { if (xhr.status >= 200 && xhr.status < 300) { console.log(JSON.parse(xhr.responseText)); } else { console.error('Error:', xhr.statusText); } }; xhr.onerror = function() { console.error('Error de red'); }; xhr.send(); -
Fetch API: API moderna y más flexible para realizar solicitudes HTTP, basada en promesas.
// Ejemplo de uso de Fetch API fetch('/api/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Error:', error)); -
Bibliotecas para trabajar con solicitudes HTTP: Por ejemplo,
axios(para navegador y Node.js) ojQuery.ajax(). Simplifican y estandarizan la ejecución de solicitudes asíncronas.// Ejemplo de uso de Axios axios.get('/api/data') .then(response => console.log(response.data)) .catch(error => console.error('Error:', error));
La elección de la herramienta depende de la especificidad de la tarea y del contexto del proyecto. Fetch y async/await son enfoques modernos y recomendados para la mayoría de los casos.