Ciao, non sono molto pratico di programmazione e sto mettendo insieme pezzi di codici che trovo in giro ma mi è capitata una cosa che non mi aspettavo.
Volevo salvare in una variabile il numero di elementi che ho in un file json e non capisco perchè

codice:
 $.getJSON("http://localhost/****", function(json) {
     var id=json.features.length; 
     console.log(id);
   });
mi restituisce nella variabile id quello che voglio mentre
codice:
 var id;
 $.getJSON("http://localhost/****", function(id,json) {
     id=json.features.length; 
   });
   console.log(id);
non ci pensa proprio?


sarebbe anche interessante capire perchè mi restituisce prima il console.log dopo la funzione e poi il console.log interno alla fuzione se ne metto due... come se prima eseguisse tutti i comandi esterni alla funzione e solo successivamente la funzione e i comandi interni ad essa....
grazie