javascript 抽象控制台日志记录
我想做一个函数,像这样。
例如:
function Logger() {
this.log = function(msg) {
console.log(msg);
}
}
我想在函数/模块等中使用它,并且一切正常。 但我的浏览器中的默认控制台通常给出文件名+行号。
现在,当我抽象此功能时,fileName
和 lineNumber
不是我放置 instance.log() 的位置。因为它会说明从哪里调用 console.log,而不是函数本身。
所以我的问题是:
如何从我想要使用记录器的地方获取正确的信息? 或者请给我任何改进此功能的提示。
I want to make a function, like this.
For example:
function Logger() {
this.log = function(msg) {
console.log(msg);
}
}
And I want to use it in functions/modules etc, and that all works fine.
But the default console in my browser normally give the fileName + lineNumber.
Now when I abstract this functionality, the fileName
and lineNumber
is not where I put my instance.log(). Because it will say from where the console.log is being called, not the function itself.
So my question:
How can I get the correct information from where I want to use my logger?
Or give me, please, any tips to improve this functionality.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我前段时间问过这个问题: 在 Chrome 中创建 console.log() 的快捷方式。
I asked about this some time ago: Create shortcut to console.log() in Chrome.
尝试使用像这样的 backtrace 函数:
Try using backtrace function like this one :
尝试分配该函数:
稍后只需在代码中调用
log('Message')
即可。Try assigning the function:
Later just call
log('Message')
in your code.