【Node.js】module 模块化

认识 node.js

Node.js 是一个独立的 JavaScript 运行环境,能独立执行 JS 代码,可以用来编写服务器后端的应用程序。基于Chrome V8 引擎封装,但是没有 DOM 和 BOM。Node.js 没有图形化界面。node -v 检查是否安装成功。node index.js 执行该文件夹下的 index.js 文件。

modules 模块化

commonJS 写法

js 复制代码
// a.js
const Upper = (str) => {
  return str.substring(0,1).toUpperCase() + str.substring(1)
}
const fn = () => {
  console.log("this is a")
}
// 接口暴露方法一:
// module.exports = {
//   upper: Upper,
//   fn
// }
// 接口暴露方法二:
exports.upper = Upper
exports.fn = fn
js 复制代码
// index.js
const A = require('./modules/a')
A.fn()  // this is a
console.log(A.upper('hello'))  // Hello

ES 写法

需要先 npm install 安装依赖,生成 node_modules 文件夹,然后在 package.json 中配置 "type": "module",,之后才可以使用这种写法。

js 复制代码
// a.js
const Upper = (str) => {
  return str.substring(0,1).toUpperCase() + str.substring(1)
}
const fn = () => {
  console.log("this is a")
}
// 接口暴露方法一:
// module.exports = {
//   Upper,
//   fn
// }
// 接口暴露方法二:
// exports.upper = Upper
// exports.fn = fn
// 接口暴露方法三:
export {
  Upper,
  fn
}
js 复制代码
// index.js
// const fnn = require('./modules/a')
// 注意:此时导入a.js 文件必须加上 js 后缀
import { Upper } from './modules/a.js'
console.log(Upper('hello'))  // Hello
相关推荐
沉默小管12 小时前
我用 NestJS + Nuxt 3 做了个导航站,聊几个踩过的坑
node.js·seo
非优秀程序员1 天前
第02章 杭电的英语老师与一台服务器|《互联网产品恩仇录》
数据库·node.js·代码规范
Hone1 天前
juejin-skills 系列 ②:我把「看掘金热榜」也做成了 Agent 技能
开源·node.js·ai编程
w16632 天前
零 Root 无 PC:我让 AI 在手机上把鸿蒙 HDC 协议的底裤扒了下来
node.js
严肃小白兔3 天前
TanStack Router 更新构建工具链:Node.js 兼容性、路由分割与前端工程实践
前端·node.js·状态模式
一缕82年的清风4 天前
用了 3 年 Notion 和 Obsidian 后,为什么我最终把所有身家搬到了思源笔记?
node.js
Dumbness4 天前
一份 JSON 生成增删改查接口,入参清洗漏了什么:Number(" ") 是 0,搜 100% 把 1000 元券也搜出来
node.js·express
FungLeo5 天前
成为全栈·基础补充·Node.js 运行时:事件循环与异步
javascript·node.js·事件循环·后端开发·异步编程·成为全栈
用户087308654876 天前
用 GUI 自动化写了一个群聊 AI:5 个真实事故,和 7 条让 AI 不像机器人的设计
node.js
Dumbness7 天前
毕设后台导出 CSV 的 4 个坑:date 字段漏了公式防护,搜索框输入 % 能扫全表
node.js·express