[英]How to apply colors to console.log when using multiple arguments?
我正在嘗試設置我的console.log()
輸出的樣式,以使我的應用程序錯誤脫穎而出。
到目前為止,這是有效的:
console.log('%cHello World', 'background: #222; color: #bada55');
但這不會:
var text = "Hello World";
var style = "background: #222; color: #bada55";
console.log('%c', text, style);
它只返回background: #222; color: #bada55
background: #222; color: #bada55
。 我錯過了什么?
您使用模板文字在%c
之后的第一個參數中添加text
var text = "Hello World"; var style = "background: #222; color: #bada55"; console.log(`%c${text}`, style);
如果沒有模板字符串,它將是
var text = "Hello World"; var style = "background: #222; color: #bada55"; console.log('%c' + text, style);
當您需要記錄多個參數時,可以使用以下方法:
const log = (...args) => {
let messageConfig = '%c%s ';
args.forEach((argument) => {
const type = typeof argument;
switch (type) {
case 'bigint':
case 'number':
case 'boolean':
messageConfig += '%d ';
break;
case 'string':
messageConfig += '%s ';
break;
case 'object':
case 'undefined':
default:
messageConfig += '%o ';
}
});
console.log(messageConfig, 'color: orange', '[LOGGER]', ...args);
};
log('my message', 123, 'qwerty', { foo: 'bar' }, [1, 2, 3, 4, 5]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.