admin管理员组文章数量:1425866
I want to access console.log
data programmatically and so I need to implement a console.log
which stores its data in a global variable or file.
Can anyone tell me how to do this?
I want to access console.log
data programmatically and so I need to implement a console.log
which stores its data in a global variable or file.
Can anyone tell me how to do this?
Share Improve this question edited May 29, 2017 at 20:12 Badacadabra 8,5357 gold badges31 silver badges54 bronze badges asked Feb 3, 2015 at 6:01 Query21Query21 2002 silver badges10 bronze badges 1- You want a logger kind of stuff? Also have a look @ Log Level - Minimal lightweight simple logging for JavaScript. loglevel replaces console.log() and friends with level-based logging and filtering, with none of console's downsides. – Shubh Commented Feb 3, 2015 at 6:07
1 Answer
Reset to default 5EDIT 2
Do use a library like loglevel
See the answers below to understand how you can implement something like this by yourself.
original answer:
Do something like:
var myLogs = [];
(function () {
var log = console.log;
console.log = function () {
var args = Array.prototype.slice.call(arguments)
log.apply(this, args );
myLogs.push(args);
};
}());
The gloabl variable myLogs
will contain your log data.
You may want to adopt the code to your needs. Maybe you want to make one string out of the args array.
EDIT
If you want to have console.log
, console.error
, console.warn
, console.info
and store the log level:
var logData = [];
(function () {
var log = console.log,
error = console.error,
warn = console.warn,
info = console.info;
console.log = function () {
var args = Array.prototype.slice.call(arguments)
log.apply(this, args );
logData.push({level: "log", arguments: args});
};
console.error = function () {
var args = Array.prototype.slice.call(arguments)
error.apply(this, args );
logData.push({level: "error", arguments: args});
};
console.warn = function () {
var args = Array.prototype.slice.call(arguments)
warn.apply(this, args );
logData.push({level: "warn", arguments: args});
};
console.info = function () {
var args = Array.prototype.slice.call(arguments)
info.apply(this, args );
logData.push({level: "info", arguments: args});
};
}());
本文标签: jquerySaving JavaScript consolelog to global variable or fileStack Overflow
版权声明:本文标题:jquery - Saving JavaScript `console.log` to global variable or file - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745459689a2659264.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论