了解无关的文件扩展名

时间:2016-04-18 20:58:30

标签: javascript file-extension

我经常看到带有额外文件扩展名的JavaScript文件(我认为"扩展名"是正确的术语;如果没有,有人会纠正我,因为我&#39 ;未能找到标记它们的资源),例如:

someFile.bundle.js
         ^^^^^^

我记得读过这样添加文件扩展名可以使用命名约定(.bundle会引用捆绑其他文件集合的文件。)

我最近看到了更多文件扩展名,例如:

someFile.spec.js
         ^^^^

现在我质疑这些扩展背后的行为;他们刚刚用于大会吗?这些类型的扩展名称是否是任意的(如某人可以将任何旧扩展名放在那里,它不会影响任何东西)?应该何时使用?您应该使用某些扩展程序(可能还有一些不应该)吗?

2 个答案:

答案 0 :(得分:1)

他们不是扩展,真的。文件扩展名(至少通常是) last .,尽管文件名结尾。那些只是.js个文件。其余的纯粹是名字。

人们这样做是为了对事物进行分类。例如,在您的示例中,我怀疑第一个文件是基于多个输入文件自动生成的;例如,它是。第二个可能包含测试代码,以确保某些外部API正常工作。在这两种情况下我都在推测,但重点是它只是一个命名约定。它可以很容易someFile-bundle.jssomeFile-spec.js

有一段时间我使用约定somefile.es6.js来表示文件包含ES2015(ES6)语法,并且在用于Web之前需要进行转换,但我的客户端对{{1}做同样的事情(我认为比我的更常见)。这样可以轻松地在构建脚本等中选择它们(somefile-es6.js.es6.js)。

答案 1 :(得分:1)

除了javascript文件之外,文件扩展名还可用于各种处理指令。例如,我已经开始命名我的许多php文件,如file.ajax.phpfile.process.php,其中包含通用头文件,其中包含检查文件扩展名以确定是否提供html的逻辑,例如常见的导航。

我还提醒Laravel's blade templating engine使用.blade.php“文件扩展名”,因为它的语法包含超出普通php的操作。