Sync 對比 Async 對比 Async/Await 在 fs-extra 中 - NodeJS
fs-extra 簡介
在繼續瞭解 fs-extra 之前,必須瞭解 fs 檔案系統的基礎知識。fs-extra 是 fs 檔案系統的擴充套件,且所含方法比之更多。它添加了一些原生的 fs 模組中沒有的檔案方法系統。fs-extra 為 fs 方法添加了對承諾的支援,因此比 fs 更好。
安裝
npm install fs-extra
語法
fs-extra 是本地 fs 檔案系統的替換件。fs 中的所有方法也附加到了 fs-extra 中。因此,你不必再次包含 fs。
const fs = require('fs-extra');fs-extra 提供的大多數方法預設情況下都是非同步的。如果未配置任何回撥,則非同步方法會返回承諾。
示例
在繼續之前,檢查是否已安裝 fs-extra
你可以使用以下命令來檢查是否已安裝 fs-extra
npm ls fs-extra
建立一個 copyFiles.js,並將以下程式碼片段複製並貼上到該檔案中
現在,執行以下命令來執行以下程式碼片段
node copyFiles.js
程式碼片段 −
// fs-extra imported for use
const fs = require('fs-extra')
// Copying file using Async with promises:
fs.copy('/tmp/myfile, '/tmp/myAsyncNewfileWithPromise')
.then(() => console.log('Async Promise Success!'))
.catch(err => console.error(err))
// Copying file using Async with callbacks:
fs.copy('/tmp/myfile', '/tmp/myAsyncNewfileWithCallback', err => {
if (err) return console.error(err)
console.log('Async Callback Success!')
})
// Copying file using Sync:
try {
fs.copySync('/tmp/myfile', '/tmp/mySyncNewfile')
console.log('Sync Success!')
} catch (err) {
console.error(err)
}
// Copying file using Async/Await:
async function copyFiles () {
try {
await fs.copy('/tmp/myfile', '/tmp/myAwaitFile')
console.log('Await Success!')
} catch (err) {
console.error(err)
}
}
copyFiles()
console.log("All files copied succesfully !!!")輸出
C:\Users\tutorialsPoint\> node copyFiles.js Sync Success! All files copied succesfully !!! Async Promise Success! Await Success! Async Callback Success!
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP