javascript文件名的命名约定是什么?[关闭]

2020/10/06 22:40 · javascript ·  · 0评论

文件应命名为-hyphens.js,camelCased.js还是其他名称?

我在这里找不到这个问题的答案

一种可能的命名约定是使用类似于jQuery使用的命名方案。它没有被普遍采用,但是很普遍。

product-name.plugin-ver.sion.filetype.js

其中product-name+plugin对还可以表示名称空间模块versionfiletype通常是可选的。

filetype可能与文件内容的方式有关。经常看到的是:

  • min 缩小文件
  • custom 用于自定义构建或修改的文件

例子:

  • jquery-1.4.2.min.js
  • jquery.plugin-0.1.js
  • myapp.invoice.js

我不了解javascript文件的任何特殊约定,因为它们在Web上与CSS文件或html文件或类似的其他文件上并不是真正唯一。您可以执行一些“安全”的操作,以减少意外碰到跨平台问题的可能性:

  1. 使用所有小写的文件名。 有些操作系统对文件名不区分大小写,并且使用所有小写字母可以防止无意中使用两个仅在某些操作系统上可能不起作用的情况下才不同的文件。
  2. 不要在文件名中使用空格。 尽管从技术上讲这可以使之起作用,但文件名中的空格可能导致问题的原因有很多。
  3. 连字符适合单词分隔符。 如果要对多个单词使用某种分隔符,而不是如中的空格或驼峰字母various-scripts.js,则连字符是安全,有用且常用的分隔符。
  4. 考虑在文件名中使用版本号。 当您要升级脚本时,请规划浏览器或CDN缓存的效果。使用长期缓存(为了提高速度和效率)但在升级JS文件时立即安全升级的最简单方法是在已部署的文件名或路径中包括版本号(就像jQuery的jquery-1.6.2.js一样) ),然后在每次升级/更改文件时更改/更改该版本号。这将确保从缓存中不会为请求较新版本的页面提供过较早的版本。

没有正式的,通用的约定来命名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

您所提供的链接中的问题是关于JavaScript变量的命名,而不是文件命名,因此请在提出问题的上下文中忽略该问题。

至于文件命名,这纯粹是偏好和品味的问题。我更喜欢用连字符命名文件,因为这样就不必像使用camelCase文件名时那样,需要使用Shift键。并且因为我不必担心Windows和Linux文件名之间的差异(Windows文件名不区分大小写,至少在XP中是如此)。

因此,答案与许多答案一样,是“取决于”或“取决于您”。

您应遵循的一条规则是,在选择的约定中要保持一致。

我通常喜欢使用小写的连字符,但是尚未提及的一点是,有时使文件名与包含在其中的单个模块或可实例化函数的名称完全匹配非常好。

例如,我有一个显示模块,var knockoutUtilityModule = function() {...}模块在其自己的名为kickoutUtilityModule.js的文件中声明,尽管从客观上讲,我更喜欢剔除实用程序module.js。

类似地,由于我使用捆绑机制来组合脚本,因此,为了保持可维护性,我开始在各自的C#样式文件中定义可实例化的函数(模板视图模型等)。例如,ProductDescriptorViewModel单独存在于ProductDescriptorViewModel.js内部(我对可实例化函数使用大写字母)。

本文地址:http://javascript.askforanswer.com/javascriptwenjianmingdemingmingyuedingshishenmeguanbi.html
文章标签: ,  
版权声明:本文为原创文章,版权归 javascript 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!