JSFiddle - React, Tailwind, and code Playground

by lookitstony

JavaScript

var mod1, mod2;
mod2 = {};
mod2.whichMod = function(){ console.log('first') };

mod1 = (function (mod2) {
    var obj = {};
    obj.whichMod = function () {
        mod2.whichMod();
    };
    return obj;
}(mod2));

mod2 = (function (mod1) {
    var obj = {};
    obj.whichMod = function () {
        console.log('mod2');
    }
    return obj;
}(mod1));

$(function(){
mod1.whichMod(); // mod2 did not exist so its using the one defined above
mod2.whichMod(); // mod2 is now overwritten but....
mod1.whichMod(); // mod1 still has the original object passed in
});