本文小編為大家詳細(xì)介紹“nodejs怎么實(shí)現(xiàn)目錄不存在自動(dòng)創(chuàng)建”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“nodejs怎么實(shí)現(xiàn)目錄不存在自動(dòng)創(chuàng)建”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
創(chuàng)新互聯(lián)公司是一家專注于做網(wǎng)站、成都網(wǎng)站制作與策劃設(shè)計(jì),友好網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:友好等地區(qū)。友好做網(wǎng)站價(jià)格咨詢:028-86922220
一、fs.mkdir
fs.mkdir()是Node.js自帶的API,它用于創(chuàng)建目錄,其定義如下:
fs.mkdir(path[, options], callback)
其中,參數(shù)path表示要?jiǎng)?chuàng)建的目錄路徑;參數(shù)options為可選,表示目錄的屬性,默認(rèn)值為0o777(即所有用戶均有讀寫執(zhí)行權(quán)限);參數(shù)callback是一個(gè)回調(diào)函數(shù),用于在目錄創(chuàng)建成功或失敗后執(zhí)行。
簡單來說,fs.mkdir方法通過檢查指定路徑的目錄是否存在來判斷是否需要?jiǎng)?chuàng)建該目錄。如果目錄不存在,則它會(huì)嘗試創(chuàng)建該目錄。
下面是一個(gè)使用fs.mkdir創(chuàng)建目錄的示例:
const fs = require('fs'); fs.mkdir('/path/to/dir', { recursive: true }, (error) => { if (error) { console.error(`創(chuàng)建目錄失敗:${error}`); } else { console.log('目錄創(chuàng)建成功'); } });
該示例中,參數(shù)recursive設(shè)置為true即可實(shí)現(xiàn)目錄自動(dòng)創(chuàng)建。如果該參數(shù)未設(shè)置為true,則當(dāng)目錄的任何一個(gè)父級(jí)目錄不存在時(shí),將會(huì)拋出一個(gè)異常。
二、mkdirp
mkdirp是Node.js的一個(gè)第三方模塊,它提供了一個(gè)更加便捷的方法來創(chuàng)建目錄。與fs.mkdir不同的是,mkdirp會(huì)自動(dòng)判斷目錄是否存在,如果不存在,則會(huì)創(chuàng)建該目錄;如果目錄存在,則會(huì)自動(dòng)返回。
使用方法如下:
mkdirp(dir, [options], function (err) { if (err) console.error(err); else console.log('成功創(chuàng)建目錄:' + dir) });
其中,參數(shù)dir表示要?jiǎng)?chuàng)建的目錄路徑,參數(shù)options為可選,表示目錄的屬性;回調(diào)函數(shù)可用于在目錄創(chuàng)建成功或失敗后執(zhí)行。
mkdirp與fs.mkdir不同的是,它能夠遞歸創(chuàng)建目錄,并且支持通過callback對(duì)成功/失敗進(jìn)行處理。
三、Node.js 10中新增方法
在Node.js 10中,fs.mkdir方法新增了一個(gè)recursive參數(shù),用于遞歸地創(chuàng)建目錄。若該參數(shù)設(shè)置為true,則可以在創(chuàng)建目錄時(shí)自動(dòng)創(chuàng)建其上級(jí)目錄。
使用方法如下:
const fs = require('fs'); fs.mkdir('/path/to/dir', { recursive: true }, (error) => { if (error) { console.error(`創(chuàng)建目錄失敗:${error}`); } else { console.log('目錄創(chuàng)建成功'); } });
在Node.js 10之前,像上述代碼中那樣直接創(chuàng)建目錄時(shí),必須要手動(dòng)先創(chuàng)建目錄的各級(jí)父目錄。而在Node.js 10之后,設(shè)置recursive為true后,可以實(shí)現(xiàn)自動(dòng)創(chuàng)建。
讀到這里,這篇“nodejs怎么實(shí)現(xiàn)目錄不存在自動(dòng)創(chuàng)建”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前標(biāo)題:nodejs怎么實(shí)現(xiàn)目錄不存在自動(dòng)創(chuàng)建
鏈接URL:http://www.chinadenli.net/article2/gepsoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、域名注冊(cè)、網(wǎng)站改版、企業(yè)網(wǎng)站制作、App開發(fā)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)