nodejs 像 C 语言那样输出当前代码的行数

 

http://stackoverflow.com/questions/11386492/accessing-line-number-in-v8-javascript-chrome-node-js

复制代码
 1 Object.defineProperty(global, '__stack', {
 2   get: function(){
 3     var orig = Error.prepareStackTrace;
 4     Error.prepareStackTrace = function(_, stack){ return stack; };
 5     var err = new Error;
 6     Error.captureStackTrace(err, arguments.callee);
 7     var stack = err.stack;
 8     Error.prepareStackTrace = orig;
 9     return stack;
10   }
11 });
12 
13 Object.defineProperty(global, '__line', {
14   get: function(){
15     return __stack[1].getLineNumber();
16   }
17 });
18 
19 console.log(__line);
复制代码

上面的代码应该输出 19

 

另外

__dirname  当前路径   /Users/dev08/test

__filename  当前文件名  /Users/dev08/test/sc.js

 

posted on   明天有风吹  阅读(2626)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通

导航

+V atob('d2h5X251bGw=')

请备注:from博客园

点击右上角即可分享
微信分享提示