【问题标题】:how is __dirname implemented in Node.js?__dirname 在 Node.js 中是如何实现的?
【发布时间】:2015-12-09 14:26:59
【问题描述】:

我是 Node.js 的新手,遇到过“__dirname”,发现它对于获取脚本的绝对目录路径非常方便。但是我很好奇它是如何实现的,它是如何理解目录结构的。我已经浏览了node js源代码,但我无法找到正确的答案。

【问题讨论】:

  • 我的猜测类似于require("path").dirname(__filename)
  • 有趣..另一个全局变量..我想知道所有这些来自哪里?另外,我试图在测试脚本中打印出 __filename 的值,它给了我文件的绝对路径。所以我的下一个问题是.. __filename 是如何实现的?
  • 大概开始here

标签: javascript node.js


【解决方案1】:

这些对象在节点中全局可用 假设 app.js 在系统中的任何位置创建一个具有任何名称的文件 并写入该文件

 console.log(__dirname);

像这样运行它:-

    node app.js

它会打印当前目录的路径。

【讨论】:

  • 是的,我知道它们在全球范围内可用。但是它是如何以他们的行为方式实现的呢?
  • arvind 请清楚说明您的陈述,我的意思是如果这是在您的代码中打印当前目录路径,那么您还想做什么,我的意思是您的要求是什么
  • 他想要Node源码中__dirname后面的代码。
  • 我想要__dirname的内部实现,它如何能够动态地给出目录值,这个全局是如何填充的?比如说 __dirname = getDirName(),其中 getDirName 是一个填充它的函数,这个函数是如何实现的?希望这是有道理的。
  • 查看您的基本文件创建一个变量 global.__basePath = __dirname 并在您的应用程序中使用它来动态定义路径,如 __basePath/您的文件名。
猜你喜欢
  • 1970-01-01
  • 2012-11-16
  • 2018-04-28
  • 1970-01-01
  • 2011-12-29
  • 1970-01-01
  • 1970-01-01
  • 2017-02-10
  • 2020-09-01
相关资源
最近更新 更多