.js, .mjs, 和 .umd.js 文件扩展名在JavaScript模块系统中代表着不同的用途和兼容性:
-
.js:
这是最常见的JavaScript文件扩展名,传统上用于存放普通的JavaScript代码。在Node.js环境中,默认情况下,.js文件被视为使用CommonJS模块系统,这意味着它们使用require()来导入模块,用module.exports或exports来导出模块。在支持ES模块的现代浏览器中,.js文件也可以通过在文件顶部使用type="module"属性来指示其为ES模块,从而使用import和export语句。 -
.mjs:
这个扩展名专为ES模块(ECMAScript Modules)设计,表示这是一个原生的ES模块文件。在Node.js中,.mjs文件默认使用ES模块语法,即支持import和export语句。使用.mjs需要Node.js开启对ES模块的支持,可能需要--experimental-modules标志(虽然随着Node.js版本的更新,这一特性可能已经成为默认)。.mjs文件不能使用CommonJS的require()语法。 -
.umd.js:
UMD(Universal Module Definition)是一种模块定义方式,旨在使JavaScript模块能够同时在AMD(Asynchronous Module Definition)、CommonJS(如Node.js环境)以及其他不支持模块加载器的环境中工作。


1万+

被折叠的 条评论
为什么被折叠?



