rip*_*234 261 javascript naming-conventions
应该将文件命名为some-with-hyphens.js,camelCased.js还是其他什么?
我在这里找不到这个问题的答案.
Bry*_*ard 171
一种可能的命名约定是使用与jQuery使用的命名方案类似的东西.它并非普遍采用,但它很常见.
product-name.plugin-ver.sion.filetype.js
Run Code Online (Sandbox Code Playgroud)
其中product-name
+ plugin
对也可以表示命名空间和模块.在version
与filetype
通常是可选的.
filetype
可以是与文件内容相关的内容.经常看到的是:
min
用于缩小文件custom
用于自定义构建或修改的文件例子:
jquery-1.4.2.min.js
jquery.plugin-0.1.js
myapp.invoice.js
jfr*_*d00 120
我不知道javascript文件的任何特定约定,因为它们在网络上不是唯一的,而不是css文件或html文件或任何其他类型的文件.您可以执行一些"安全"操作,使您不太可能意外遇到跨平台问题:
various-scripts.js
,则连字符是一种安全且有用且常用的分隔符.zzz*_*Bov 53
命名JavaScript文件没有官方的,通用的约定.
有一些不同的选择:
scriptName.js
script-name.js
script_name.js
都是有效的命名约定,但我更喜欢jQuery建议的命名约定(对于jQuery插件,虽然它适用于任何JS)
jquery.pluginname.js
这个命名约定的美妙之处在于它明确地描述了添加的全局命名空间污染.
foo.js
增加 window.foo
foo.bar.js
增加 window.foo.bar
因为我省略了版本控制:它应该在全名之后,最好用连字符分隔,主要版本和次要版本之间有句点:
foo-1.2.1.js
foo-1.2.2.js
foo-2.1.24.js
Pet*_*son 12
您提供的链接中的问题涉及JavaScript变量的命名,而不是文件命名,因此请在您提出问题的上下文中忘记这一点.
至于文件命名,纯粹是一个偏好和品味的问题.我更喜欢用连字符命名文件,因为那时我不必像处理camelCase文件名那样触及shift键; 因为我不必担心Windows和Linux文件名之间的差异(Windows文件名不区分大小写,至少通过XP).
所以答案就像许多人一样,是"取决于"还是"取决于你".
您应遵循的一条规则是在您选择的约定中保持一致.
我通常更喜欢小写的连字符,但有一点还没有提到的是,有时候让文件名与单个模块的名称或包含在其中的可实例化函数完全匹配是件好事.
例如,我var knockoutUtilityModule = function() {...}
在自己的文件中声明了一个名为knockoutUtilityModule.js 的揭示模块,虽然客观上我更喜欢knockout-utility-module.js.
类似地,由于我正在使用捆绑机制来组合脚本,因此为了可维护性,我已经在自己的文件C#样式中定义了可实例化的函数(模板化视图模型等).例如,ProductDescriptorViewModel在ProductDescriptorViewModel.js中独立存在(我使用大写来实现可实例化的函数).
归档时间: |
|
查看次数: |
142495 次 |
最近记录: |