defaultStringifier()

in core/utils.js [173:211]


    defaultStringifier(pattern, obj) {
        const objType = typeof obj;

        switch (objType) {
            case "string":
                return obj;

            case "number":
                return exports.number.format(obj, pattern);

            case "function":
                return obj.toString();

            case "symbol":
                return obj.toString();

            case "boolean":
                return obj ? "true" : "false";

            case "undefined":
                return "undefined";

            case "object":
            default:
                if (obj === null) {
                    return "null";
                }

                if (obj instanceof Date) {
                    return exports.date.format(obj, pattern);
                }

                if (exports.isFunction(obj["toString"]) && obj.toString !== Object.prototype.toString) {
                    return obj.toString();
                }

                return JSON.stringify(obj, null, 4);
        }
    },