.js、.cjs 和 .mjs 文件扩展名的区别

.js、.cjs 和 .mjs 文件扩展名的区别

💡 原文约300字/词,阅读约需1分钟。
📝

内容提要

JavaScript 的模块系统使用三种文件扩展名:.js(默认格式,支持 CJS 或 ESM),.cjs(明确为 CommonJS 模块,确保向后兼容),.mjs(用于 ESM 模块,强制使用现代语法)。新项目建议使用 .mjs,旧项目使用 .cjs 和 .mjs。使用 .js 时需在 package.json 中正确设置类型。

🎯

关键要点

  • .js 是默认文件格式,支持 CJS 或 ESM,使用时需根据项目类型确定。
  • .cjs 明确指定为 CommonJS 模块,确保向后兼容。
  • .mjs 用于 ESM 模块,强制使用现代语法。
  • 新项目建议使用 .mjs,旧项目使用 .cjs 和 .mjs。
  • 使用 .js 时需在 package.json 中正确设置类型,以避免混淆。

延伸问答

.js 文件的主要特点是什么?

.js 是默认文件格式,支持 CommonJS (CJS) 或 ES Modules (ESM),使用时需根据项目类型确定。

.cjs 文件有什么特别之处?

.cjs 明确指定为 CommonJS 模块,确保向后兼容,适用于旧版本的 Node.js。

.mjs 文件的使用场景是什么?

.mjs 用于 ES Modules (ESM) 模块,强制使用现代语法,如 import 和 export。

在新项目中应该使用哪个文件扩展名?

新项目建议使用 .mjs,以便专注于 ESM 模块。

如何避免使用 .js 文件时的混淆?

使用 .js 时需在 package.json 中正确设置类型,以避免混淆。

旧项目应该如何选择文件扩展名?

旧项目应使用 .cjs 和 .mjs 作为不同的文件扩展名来管理模块。

➡️

继续阅读