Fonction `jQuery.getJSON ()` dans une boucle for

J’ai le code suivant qui renvoie h=30 au lieu de chaque valeur à l’intérieur de la boucle.

 for (var h = 0; h < 31; h++) { $.getJSON('http://google.com/', function(data) { console.log('line ' + h); } ) }; 

Que dois-je faire pour obtenir les valeurs de boucle?

Faire une fermeture avec un IIFE

 for (var h = 0; h < 31; h++) { (function(h) { $.getJSON('http://google.com/', function(data) {...... console.log('line ' + h); }) })(h) }; 

De cette façon, la valeur de h sera conservée pour cette itération au lieu d'être définie sur la dernière valeur au moment du getJSON