JSFiddle - React, Tailwind, and code Playground

by ismusidhu

JavaScript

var s = '';
var level = 0;
$(window).error(function() {

    s = s + '{';
    for (var i = 0; i < arguments.length; i++) {
        s += '"argument' + i + '": ';
        if (typeof arguments[i] == 'object') {
            stringifyRecursive(arguments[i]);
            s = s + ',';
        } else {
            s = s + arguments[i] != null ? ('"' + arguments[i].toString().replace(/\"/g, '\'') + '",') : 'null,';
        }
    }
    s = s.replace(/,+$/, '}');
    alert(s);
    console.log(s);
});

function stringifyRecursive(obj) {
    level = level + 1;
    s = s + '{';
    for (var p in obj) {
        s = s + '"' + p + '":'
        if (typeof obj[p] == 'object' && level <= 2) {
            stringifyRecursive(obj[p]);
            s = s + ',';
        }
        else {
            if (obj[p] != null) {
                if (typeof obj[p] == 'function') {
                    s = s + '"[function Function]",';
                }
                else {
                    s = s + '"' + obj[p].toString().replace(/\"/g, '\'') + '",';
                }
            }
            else s = s + 'null,';
        }
    }
    s = s.replace(/,+$/, '}');
    level = level - 1;
}
    raise.error();