JSFiddle - React, Tailwind, and code Playground

by Contra

HTML

<html>
    <head>
        <title>Sexton Blake's Tragedy Detector</title>
    </head>
    
    <body bgcolor="black">
        <font color="green">
            <div id="output">
                <h1>Tragedies:</h1><br/>
            </div>
        </font>
    </body>
</html>

JavaScript

var decade = new Date('December 29, 2009').getTime() - new Date('January 1, 2000').getTime();

// Basic algorithm to determine if a tragedy is funny yet
var isFunny = function(tragedy) {
    if (new Date().getTime() - tragedy.date.getTime() >= decade) {
        return true;
    } else {
        return false;
    }
};

// Basic algorithm to determine how funny the tragedy is
var getFunniness = function(tragedy) {
    var since = new Date().getTime() - tragedy.date.getTime();
    var decades = Math.round(since / decade);
    var losses = Math.round(tragedy.casualties / 1000);
    return Math.round(decades * losses);
};

var printTragedy = function(tragedy) {
    var isf = isFunny(tragedy) ? ' ARE socially acceptable' : ' ARE NOT socially acceptable yet';
    var lev = getFunniness(tragedy);
    if (lev > 10) {
        lev = 10;
    }

    $("#output").append('<p>' + tragedy.name + ' jokes ' + isf + ' with a comedy level of ' + lev + '/10</p>');
};

// Sample tragedies
var wtc = {
    name: 'World Trade Center',
    date: new Date('September 11, 2001'),
    casualties: 2977
};
var holocaust = {
    name: 'Holocaust',
    date: new Date('May 8, 1945'),
    casualties: 6000000
};
var katrina = {
    name: 'Hurricane Katrina',
    date: new Date('August 30, 2005'),
    casualties: 1836
};
var gulf = {
    name: 'Gulf War',
    date: new Date('November 30, 1995'),
    casualties: 128000
};

printTragedy(wtc);
printTragedy(holocaust);
printTragedy(katrina);
printTragedy(gulf);