Change console.log message color

后端 未结 7 837
我寻月下人不归
我寻月下人不归 2021-01-31 03:12

Is there a way to do something like:

console.log(\"hello world\", \'#FF0000\')

in Chrome/Safari or Firefox ?

7条回答
  •  天命终不由人
    2021-01-31 03:28

    Made this and its been helpful:

    function log(msg, color) {
        color = color || "black";
        bgc = "White";
        switch (color) {
            case "success":  color = "Green";      bgc = "LimeGreen";       break;
            case "info":     color = "DodgerBlue"; bgc = "Turquoise";       break;
            case "error":    color = "Red";        bgc = "Black";           break;
            case "start":    color = "OliveDrab";  bgc = "PaleGreen";       break;
            case "warning":  color = "Tomato";     bgc = "Black";           break;
            case "end":      color = "Orchid";     bgc = "MediumVioletRed"; break;
            default: color = color;
        }
    
        if (typeof msg == "object") {
            console.log(msg);
        } else if (typeof color == "object") {
            console.log("%c" + msg, "color: PowderBlue;font-weight:bold; background-color: RoyalBlue;");
            console.log(color);
        } else {
            console.log("%c" + msg, "color:" + color + ";font-weight:bold; background-color: " + bgc + ";");
        }
    }
    

    Use:

    log("hey"); // Will be black
    log("Hows life?", "green"); // Will be green
    log("I did it", "success"); // Styled so as to show how great of a success it was!
    log("FAIL!!", "error"); // Red on black!
    var someObject = {prop1: "a", prop2: "b", prop3: "c"};
    log(someObject); // prints out object
    log("someObject", someObject); // prints out "someObect" in blue followed by the someObject
    

提交回复
热议问题