JSFiddle - React, Tailwind, and code Playground

by Matt Bow

JavaScript

function Mouse(i_name){
    this.name = i_name;
    this.alive=true;
    this.whoami = function(){
        console.log("hi i am a mouse named "+ this.name);
    };
    this.getStatus = function(){
        if (this.alive === false){
            console.log("I am dead. I was eaten by " + this.killer);
        }
        else {
            console.log("I am alive and eating cheese");
        }
    };
    this.update = function(kitty, callback){
        this.killer = kitty;
        var err = 'FAIL';
        if(this.alive){
            this.alive = false;
            console.log(kitty + " ate a mouse");
            err = 'SUCCESS';
        }
        callback(function(){
            console.log('so complicated');
            return 'SUCCESS';
        }(),this.name);
    };
}
var feedCat = function(i_mouse){
    if (!i_mouse) {
        console.log("You need to feed the cat a mouse");
        return;
    }
    var catName = 'Wes';
    i_mouse.update(catName,function(err,victimName){
        if(err==='SUCCESS') {
            console.log("Fed " + victimName + " to " + catName);
        }
        else {
            console.log('somethings wrong');
        }
    });
}
var mouse = new Mouse('Sam');
mouse.whoami();
mouse.getStatus();
feedCat(mouse);
mouse.getStatus();