JSFiddle - React, Tailwind, and code Playground

by Elak

HTML

<div id="out"></div>

JavaScript

var Errors = {};
(function(){
    var myError = function(message){
        return $.extend(new Error(arguments[0]),{
            printExample : function(){
                $("#out").html("Error: " + this.name + ": " + this.message);
            }
        },
        // overwriting error object properties. default for name is Error...
        // this way you can control the log output
        {
            name: "ExceptionNameWhichWillShowInLog"
        }
        );
    };
    //myError = $.extend(myError,Error);
    //myError.prototype = $.extend({}, new Error());
    //myError.prototype.PrintExample = function(){
      //  $("#out").html(this.message);
    //};
    //myError.prototype = $.extend(myError.prototype, Error.prototype);
    
    Errors.MyError = myError;
    
})();

$(document).ready(function(){
    var mError = new Errors.MyError("message: hello world");
    mError.printExample();
    throw mError;
});