>[success] # node 的模塊管理
>[danger] ##### 對node:module\_name 這種方式 補充說明
`node:module_name` 這種方式是 Node.js v13.x.x 版本之后增加的語法,用于引入 Node.js 內置模塊。在早期的 Node.js 版本中,為了區分內置模塊和第三方模塊或自定義模塊,需要使用 `require('path')` 的方式來引入內置模塊 `path`,而使用 `require('./path')` 或 `require('../path')` 的方式來引入自定義模塊或第三方模塊。這種方式雖然可以區分內置模塊和第三方模塊或自定義模塊,但是容易混淆和出錯。 為了解決這個問題,**Node.js v13.x.x 版本引入了新的語法 `node:module_name`**,用于顯式地引入 Node.js 內置模塊。使用這種語法時,可以省略掉內置模塊所在的文件夾路徑,只需要在 `node:` 后面跟上模塊的名稱即可。這樣可以更加清晰地區分內置模塊和第三方模塊或自定義模塊,并且提高了代碼的可讀性和可維護性。 需要注意的是,這種語法只適用于 Node.js 內置模塊,不能用于引入第三方模塊或自定義模塊。
**在 Node.js v12.0.0 版本中,就已經支持 ES6 模塊的導入和導出了**,但默認情況下仍然使用 CommonJS 模塊系統。如果要使用 ES6 模塊系統,需要在文件頂部添加 `"type": "module"`。`import { access, constants } from 'node:fs/promises'`這種語法是在 Node.js v13.x.x 版本中才開始支持的,用于顯式地引入 Node.js 內置模塊 `fs/promises`。如果使用較舊版本的 Node.js,可以使用 `import { access, constants } from 'fs/promises'` 的方式來導入 `fs/promises` 模塊。
[鏈接](https://github.com/nodejs/node/pull/35498/commits)
- 基礎
- 什么是Node.js
- 理解 I/O 模型
- 理解node 中 I/O
- 對比node 和java 使用場景
- node 模塊管理
- 內置模塊 -- buffer
- 內置模塊 -- fs
- fs -- 文件描述符
- fs -- 打開文件 api
- fs -- 文件讀取 api
- fs -- 文件寫入 api
- fs -- 創建目錄 api
- fs -- 讀取文件目錄結構 api
- fs -- 文件狀態(信息) api
- fs -- 刪除文件/目錄 api
- fs -- 重命名 api
- fs -- 復制文件 api
- 內置模塊 -- events
- 內置模塊 -- stream
- 可讀流 -- Readable
- 可寫流 -- Writable
- Duplex
- Transform
- 內置模塊 -- http
- http -- 從客戶端發起
- http -- 從服務端發起
- 內置模塊 -- url
- 網絡開發