В JavaScript'e есть функция console.log(), в которую можно передать много параметров.
В моём проекте есть нечто подобное:
var MyObj = {
log: function() {
if (ENV != 'dev') {
return;
}
//TODO more actions with console.log
}
}
Есть функция, которая будет принимать параметры и передавать их в console.log()
Но как достичь её универсальности, если вызовы будут, например, такими:
MyObj.log("var1=%s,var2=%s,var3=%s", var1, var2, var3);
MyObj.log("var1=%s,var2=%s,var3=%s,var4=%s,var5=%s", var1, var2, var3, var4, var5);
Как правильно передать в console.log() N аргументов, чтобы при этом не возникало undefined?
Ответ
Если достаточно просто вывести все аргументы на консоль, то:
ENV = "dev";
var MyObj = {
log: function() {
if (ENV != 'dev') {
return;
}
console.log.apply(console, arguments);
}
}
MyObj.log(1, 2, 3, 4, 5);
Если нужно именно хитрое форматирование - то вам придется его написать вручную.
Комментариев нет:
Отправить комментарий