JSFiddle - React, Tailwind, and code Playground

HTML

<div id='test'>Waiting...</div>

JavaScript

function MyData() {
    this.data = null;
}

MyData.prototype.getData = function() {
    return this.data;
};

function MyAjax() {
};

MyAjax.prototype.post = function(callback) {
    var _this = this;
    var myData = {text: 'Hey there!'};
    var res = new MyData();
    $.ajax({
        type: 'POST',
        url: '/ajax_json_echo/',
        dataType: 'json',
        data: myData,
        success: function(data) {
            res.data = data.post_response;
            if(callback) callback();
        }
    });
    return res;
};

var myAjax = new MyAjax();

var res = myAjax.post();

var iid = setInterval(checkRes, 1000);
function checkRes() {
    if(res.getData()) {
        $('#test').text(res.getData().text);
        clearInterval(iid);
    }
}