Search code examples
javascriptajaxrequestresultset

access Json as result of ajax request


Hi how can i handle this json response from ajax

{"suivi":5,
"mail":8,
"listSuivi":{
      "0":{"dossier":"IWE123123","refunds_count":1},
      "1":{"dossier":"IM00000009","refunds_count":2}
   }
 }

i can access to suivi and mail doing this

    success: function(data){

      $('#suivi').html(data.mail+" +");
      $('#mail').html(data.suivi+" +");
    }

but how can i obtain the list of dossiers (listSuivi)? Thx a lot


Solution

  • You can loop over the items with a for loop.

    Some options are a for ... in loop:

    const data = {
      "suivi":5,
      "mail":8,
      "listSuivi":{
        "0":{"dossier":"IWE123123","refunds_count":1},
        "1":{"dossier":"IM00000009","refunds_count":2}
      }
    };
    
    // For ... in loop
    for(const key in data.listSuivi) {
      const item = data.listSuivi[key];
      
      console.log("Object: ", item);
      console.log("Dossier:", item.dossier);
      console.log("Refunds:", item.refunds_count);
    }

    Or a for ... of loop in combination with Object.values

    const data = {
      "suivi":5,
      "mail":8,
      "listSuivi":{
        "0":{"dossier":"IWE123123","refunds_count":1},
        "1":{"dossier":"IM00000009","refunds_count":2}
      }
    };
    
    // For ... of loop with Object.values
    for(const item of Object.values(data.listSuivi)) {
      console.log("Object: ", item);
      console.log("Dossier:", item.dossier);
      console.log("Refunds:", item.refunds_count);
    }