Javascript nodeJS中的双下划线与单下划线

Javascript nodeJS中的双下划线与单下划线,javascript,node.js,naming-conventions,Javascript,Node.js,Naming Conventions,我在使用nodeJS时遇到了两个冲突的命名约定。有些变量以单下划线开头,如\u temp,而有些变量以双下划线开头,如\u dirname 我一直在努力寻找这个命名惯例差异的答案。我签出了,但答案是非常具体的\uu dirname和\uu filename。它没有解决冲突的命名约定 如果有人能为我提供这方面的资源,那就太好了。我可能错了,但据我所知,js中只有一个约定:“如果方法或变量应该是私有的,请在它前面使用下划线-_privateMethod”。即使是这一次也有点“非官方”。双下划线不是命

我在使用nodeJS时遇到了两个冲突的命名约定。有些变量以单下划线开头,如
\u temp
,而有些变量以双下划线开头,如
\u dirname

我一直在努力寻找这个命名惯例差异的答案。我签出了,但答案是非常具体的
\uu dirname
\uu filename
。它没有解决冲突的命名约定


如果有人能为我提供这方面的资源,那就太好了。

我可能错了,但据我所知,js中只有一个约定:“如果方法或变量应该是私有的,请在它前面使用下划线-_privateMethod”。即使是这一次也有点“非官方”。双下划线不是命名约定。只有node的一些开发人员决定这样命名。

即使我是node.js的新手,也在寻找答案。在node.js文档中找到了答案。有关更多详细信息,请参阅

如上所述,带有单下划线(_private)的变量用于定义私有变量

在node.js中,双下划线(_)没有任何约定。 node.js中只有两个带双下划线的变量(称为全局对象)

__dirname:用于获取当前执行脚本所在目录的名称

__filename:用于获取正在执行的代码的文件名


我怀疑,有一种想法是,开发人员可以保留单下划线来添加私有属性,因此作为一个框架,Express决定使用双下划线,以避免与开发人员可能使用的任何单下划线属性发生冲突。但是,正如你所说,这方面没有“官方”指南。