如何创建一个在javascript中显示文件名的日志系统

本·默特

如何创建一个在右侧显示文件名和行号的日志系统。
例如,当我跑步

console.log('Hello world');

在“ index.js”中将记录

"Hello world                            (index.js:1)"
Aplet123

您可以使用错误的堆栈跟踪来获取文件和行号:

function getFileLine(callee) {
    const orig = Error.prepareStackTrace;
    Error.prepareStackTrace = (err, stack) => [stack[0].getFileName(), stack[0].getLineNumber()];
    const err = new Error();
    Error.captureStackTrace(err, callee);
    const lineNum = err.stack;
    Error.prepareStackTrace = orig;
    return lineNum;
}

function logger(...args) {
    console.log(...args, `(${getFileLine(logger).join(":")})`);
}

logger("foobar");

如果提供的文件名太长,无法满足您的需求,则可以使用path.basename

const path = require("path");

function getFileLine(callee) {
    const orig = Error.prepareStackTrace;
    // there's a basename call here
    Error.prepareStackTrace = (err, stack) => [path.basename(stack[0].getFileName()), stack[0].getLineNumber()];
    const err = new Error();
    Error.captureStackTrace(err, callee);
    const lineNum = err.stack;
    Error.prepareStackTrace = orig;
    return lineNum;
}

function logger(...args) {
    console.log(...args, `(${getFileLine(logger).join(":")})`);
}

logger("foobar");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在文件传输中显示文件名?

来自分类Dev

在标签文本中显示文件名

来自分类Dev

我如何创建一个.bat文件来制作迭代文件名?

来自分类Dev

如何使用Awk从列显示文件名?

来自分类Dev

创建一个文件名,文件名是列表中的一项

来自分类Dev

如何使用python显示文件夹中Word文档的文件名?

来自分类Dev

如何减少显示文件名?

来自分类Dev

如何创建一个以txt输出文件名的批处理文件?

来自分类Dev

如何创建一个唯一的文件名?

来自分类Dev

上传前如何显示文件名?

来自分类Dev

在另一列中显示文件的日期,并在gridview中显示文件名

来自分类Dev

创建一个功能数组以将文件名存储在文件夹中

来自分类Dev

如何每次创建下一个下载文件名+ 1个值?

来自分类Dev

我如何通过文件名从目录中获取最后一个文件,然后创建下一个文件?

来自分类Dev

如何找到文件名,文件名都在一个文件中?

来自分类Dev

如何创建一个jsp页面以将所有上载的文件名显示为可下载链接(在GAE Java中)?

来自分类Dev

在JavaScript中创建一个文件名和内容变量的文件

来自分类Dev

如何在bash中创建一个在其他函数之间插入新文件名的函数?

来自分类Dev

如何从许多pdf中创建一个pdf,而它们的文件名也显示在一个pdf中?

来自分类Dev

在标签文本中显示文件名

来自分类Dev

如何在一个命令中查找和显示文件?

来自分类Dev

如何遍历匹配变量的文件并仅在bash中显示文件名?

来自分类Dev

在XFCE面板按钮中仅显示文件名

来自分类Dev

如何在vim中显示文件名,行数和字符数?

来自分类Dev

如何创建一个显示文件名及其内容的日志文件

来自分类Dev

如何在 JavaFX TreeView 中仅显示文件名?

来自分类Dev

bash 提示:如何在 PS1 中仅显示文件名?

来自分类Dev

如何在makefile中创建一个包含文本文件名和时间戳的变量?

来自分类Dev

如何使用 find、ls 命令根据数组中的条目显示文件名?

Related 相关文章

  1. 1

    如何在文件传输中显示文件名?

  2. 2

    在标签文本中显示文件名

  3. 3

    我如何创建一个.bat文件来制作迭代文件名?

  4. 4

    如何使用Awk从列显示文件名?

  5. 5

    创建一个文件名,文件名是列表中的一项

  6. 6

    如何使用python显示文件夹中Word文档的文件名?

  7. 7

    如何减少显示文件名?

  8. 8

    如何创建一个以txt输出文件名的批处理文件?

  9. 9

    如何创建一个唯一的文件名?

  10. 10

    上传前如何显示文件名?

  11. 11

    在另一列中显示文件的日期,并在gridview中显示文件名

  12. 12

    创建一个功能数组以将文件名存储在文件夹中

  13. 13

    如何每次创建下一个下载文件名+ 1个值?

  14. 14

    我如何通过文件名从目录中获取最后一个文件,然后创建下一个文件?

  15. 15

    如何找到文件名,文件名都在一个文件中?

  16. 16

    如何创建一个jsp页面以将所有上载的文件名显示为可下载链接(在GAE Java中)?

  17. 17

    在JavaScript中创建一个文件名和内容变量的文件

  18. 18

    如何在bash中创建一个在其他函数之间插入新文件名的函数?

  19. 19

    如何从许多pdf中创建一个pdf,而它们的文件名也显示在一个pdf中?

  20. 20

    在标签文本中显示文件名

  21. 21

    如何在一个命令中查找和显示文件?

  22. 22

    如何遍历匹配变量的文件并仅在bash中显示文件名?

  23. 23

    在XFCE面板按钮中仅显示文件名

  24. 24

    如何在vim中显示文件名,行数和字符数?

  25. 25

    如何创建一个显示文件名及其内容的日志文件

  26. 26

    如何在 JavaFX TreeView 中仅显示文件名?

  27. 27

    bash 提示:如何在 PS1 中仅显示文件名?

  28. 28

    如何在makefile中创建一个包含文本文件名和时间戳的变量?

  29. 29

    如何使用 find、ls 命令根据数组中的条目显示文件名?

热门标签

归档