Javascript 如何获取Nodejs中正在执行的代码的位置

Javascript 如何获取Nodejs中正在执行的代码的位置,javascript,node.js,logging,Javascript,Node.js,Logging,尝试创建一个logger javascript类,我将其作为require()添加到其他javascript文件中。此记录器的功能之一应该是将当前正在运行的脚本写入控制台 我认为它的执行方式是,在我的记录器中有一个path.basename(_Filename)函数,但是我如何定位执行记录器脚本的脚本的文件名呢 加载页面时,浏览器加载DOM下的所有脚本,因此无法知道脚本本身所在的文件 function xyz(){ console.log(arguments.callee.toStrin

尝试创建一个logger javascript类,我将其作为require()添加到其他javascript文件中。此记录器的功能之一应该是将当前正在运行的脚本写入控制台


我认为它的执行方式是,在我的记录器中有一个path.basename(_Filename)函数,但是我如何定位执行记录器脚本的脚本的文件名呢

加载页面时,浏览器加载DOM下的所有脚本,因此无法知道脚本本身所在的文件

function xyz(){
    console.log(arguments.callee.toString().match(/function ([^\(]+)/)[1]);
}

只要函数是以函数xyz(){}格式声明的,就应该给出正在调用的函数的名称。在本例中为xyz

当您需要记录器时,您应该将文件名作为参数传递。这不是更好的方法吗:
arguments.callee.name