gpt4 book ai didi

javascript - 将多个参数一起打印以进行记录的函数

转载 作者:行者123 更新时间:2023-12-03 03:42:28 26 4
gpt4 key购买 nike

我正在尝试编写一个通用日志函数,它将接受可变长度参数的字符串和对象类型,并使用与模块和子模块相关的一些元数据打印它们。但我无法找到一种方法将所有参数打印在一起。目前我正在做这个。

// MODULE_NAME is different for every module of my project, so
// that I know which module the log belongs to.

function myLogger() {
for (var i = 0; i < arguments.length; i++) {
console.log(MODULE_NAME, ":", arguments[i]);
}
}

我正在寻找一种更好的方法来做到这一点,该方法适用于以下示例。

// MODULE_NAME = "TEST"
myLogger("error");
myLogger("error", err, ", result", res);
myLogger("hello", "world");

上述调用的输出应该是

TEST : error
TEST : error {obj}, result {obj}
TEST : hello world

最佳答案

console.log 实际上接受可变参数。你可以做类似的事情

function myLogger(...args) {
console.log(MY_MODULE, ...args);
}

将所有参数直接传递到console.log。

如果你的life公司很糟糕并且你不能使用现代JS(带有转译器),你可以使用.apply()

function myLogger() {
console.log.apply(console, [MY_MODULE].concat(arguments));
}

关于javascript - 将多个参数一起打印以进行记录的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45561724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com