命名约定来区分节点JS中的模块/实例/方法variables

假设我有这样的代码:

var moduleVar = "I belong to this module, you could also call me a static var"; var ClassName = function() { var instanceVar = "I belong to this instance"; function someFunction(functionVar) { var anotherFunctionVar = "I belong to this function"; return 1; } } module.exports = ClassName; 

我已经四处寻找节点的命名约定,但我还没有发现任何事情,甚至处理这个问题。 我喜欢用下划线(例如“_instanceVar”)为实例variables加上前缀,但是我仍然停留在函数和模块variables之间的区别。

那里是否有一个命名惯例区分这些?

这是主观的,由团队/开发人员。 我通常看到用大写字母来定义“类”,而其他的基本上都是小写字母。 方法,实例variables,函数参数。 。 。 只是一切!

基本的networkingsearch引导我到这个: http : //www.j-io.org/Javascript-Naming_Conventions/#naming-conventions

下划线通常保留给“私人”实例variables。 真的,你不会在javascript中看到很多“我的”或“m_”的东西 – 我认为这只是缺乏类和面向对象的概念,而且还没有被inheritance。

这有时会让事情变得困难,因为你不知道你的variables是一个原始的,一个对象,一个数组还是一个函数! 由于事情不是很强types,我认为这比骆驼更能打开匈牙利语的大门,但是你也不经常看到这一点(所以我们不这样做):

最后一件事 – 有些东西可以通过JSHint来检查和约束。 使用它,或者jslint ,所以你不要忘记你的约定,并写出一般符合的代码。 绝对强制你如何编码(我仍然从双引号切换到单引号)

Interesting Posts