JSFiddle - React, Tailwind, and code Playground

by Vladimir Sobolev

JavaScript

function ig_api(cmd, data, callback, d) {
	var data = data || 0,
			d = d || $.Deferred();
  
  $.get('https://jsonplaceholder.typicode.com/todos/'+data, function(json){
  
  	if (json.id < 5) {
    	ig_api(cmd, data+1, callback, d);
      return;
    }
     d.resolve(json);
     if (callback) callback(json);
     
  }).fail(fb);
  
  return d.promise();
  
}

function cb(data) {
	console.info('CALLBACK', data);
}
function fb(data) {
	console.warn('FAILBACK', data);
}
function re(data) {
	console.log('RESOLVE', data);
}

$.when(ig_api('test', 1, cb)).done(re);