Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

224
Vistas
JavaScript Try catch how to call same function in catch to retry

In JavaScript Try catch block how to retry the same . am facing once scenario any one ca give the best approach to handle this ?

for Example :

const getMyDetails = async()=>{
try{
 await getName();
}catch(err){
 //But Above FAIL due to some issue
 // so I want to try the same again "getName" here until the success - 'not single time'
}

// Second Method for get data 
const getName = async()=>{
try{
 here am calling API or any kind of subscription But here its failing so am throwing error 
}catch(err){
 throw new Error(err);
}

getMyDetails()

Note: may be the fail reason like Databse events or some other subscriptions etc..

instead of calling the method name in catch .. what will be the best approach for retry

Thanks in advance

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Just Calling Itself If It Fails Will Do The Job


const getMyDetails = async()=>{
try{
 await getName();
}catch(err){
 getMyDetails()
}

// Second Method for get data 
const getName = async()=>{
try{
  // Method
}catch(err){
 throw new Error(err);
}

getMyDetails()

about 4 years ago · Juan Pablo Isaza Denunciar

0

Here you can see an example behavior and the implementation logic of calling an async function N number of times, only until no errors are thrown.

// We must be inside of an async function to be able to call await
(async function() {

  // Example async function which returns the value only if no errors are thrown,
  // otherwise calls itself to retry the async call
  async function getMyDetails() {
    try {
      return await getName();
    } catch (error) {
      return getMyDetails();
    }
  }

  // Example async function which returns value only if the random number is even,
  // otherwise throws an Error (simulating an API error response)
  async function getName() {
    return new Promise((resolve, reject) => {
      let randomNumber = Math.floor(Math.random());
      if (randomNumber % 2 === 0) {
        resolve("Random Name");
      }
      reject("Example API Error has occured.")
    });
  }

  let myDetails = await getMyDetails();
  console.log(myDetails);
  
})();

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda