nodejs怎么显示console.log所对应的打印日志的代码的行数呢?今天google了很长时间,总算找到了一个自己比较满意的解决方案。话不多说,直接上代码:

    1. var getStackTrace = function () {
    2. var obj = {};
    3. Error.captureStackTrace(obj, getStackTrace);
    4. return obj.stack;
    5. };
    6. var log = console.log;
    7. console.log = function () {
    8. var stack = getStackTrace() || ""
    9. var matchResult = stack.match(/\(.*?\)/g) || []
    10. var line = matchResult[1] || ""
    11. for (var i in arguments) {
    12. }
    13. if (typeof arguments[i] == 'object') {
    14. arguments[i] = JSON.stringify(arguments[i])
    15. }
    16. arguments[i] += '----' + line.replace("(", "").replace(")", "")
    17. log.apply(console, arguments)
    18. };

    作者:宛丘之上兮
    链接:https://www.jianshu.com/p/f5878f0238b7
    来源:简书
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。