💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
>[success] # 创建目录 api | API | 描述 | | --- | --- | | `fs.mkdir(path[, options], callback)` | 创建一个指定的目录。如果目录已经存在,则会报错。可以通过 options 参数来指定目录的权限,默认值为 0o777。callback 回调函数会在目录创建完成后调用。 | | `fs.mkdirSync(path[, options])` | 同步地创建一个指定的目录。如果目录已经存在,则会报错。可以通过 options 参数来指定目录的权限,默认值为 0o777。 | >[danger] ### `fs.mkdir(path[, options], callback)` 1. `fs.mkdir(path[, options], callback)`是 Node.js 中用于创建目录的 API 之一。它接受三个参数: * `path`:要创建的目录的路径,可以是绝对路径或相对路径。 * `options`:可选参数,用于指定目录的权限,默认值为 0o777。该参数是一个对象,可以包含以下属性: * `recursive`:一个布尔值,指定是否递归地创建目录及其父级目录。默认值为`false`。如果设置为`true`,则会在创建目录时自动创建缺失的父级目录。 * `mode`:一个整数,指定目录的权限。默认值为 0o777。 * `callback`:一个回调函数,用于在目录创建完成后执行。回调函数接受一个参数,即可能产生的错误对象。如果目录创建成功,则错误对象为`null`。 2. **如果目录已经存在,或者没有足够的权限来创建目录,`fs.mkdir`方法将会返回一个错误对象,可以在回调函数中捕获并进行处理** 3. `recursive: true` **方法来递归地创建目录**。 | 参数 | 类型 | 描述 | | --- | --- | --- | | `path` | string | 要创建的目录的路径,可以是绝对路径或相对路径。 | | `options` | object | 可选参数,用于指定目录的权限和递归创建。包含以下属性: | | | `mode` | 一个整数,指定目录的权限。默认值为 0o777。 | | | `recursive` | 一个布尔值,指定是否递归地创建目录及其父级目录。默认值为`false`。 | | `callback` | function | 一个回调函数,用于在目录创建完成后执行。回调函数接受一个参数,即可能产生的错误对象 | >[danger] ##### 案例 ~~~ const fs = require('fs') // 创建文件目录 fs.mkdir('aaa', (err) => { if (err) { console.log(err) } console.log('目录创建成功') }) // 创建递归文件目录 fs.mkdir('aaa/bbb/ccc', { recursive: true }, (err) => { if (err) { console.log(err) } console.log('目录创建成功') }) ~~~ >[danger] ### fs.mkdirSync(path[, options]) 1. `fs.mkdirSync(path[, options])`是 Node.js 中用于同步创建目录的 API 之一。它接受两个参数: * `path`:要创建的目录的路径,可以是绝对路径或相对路径。 * `options`:可选参数,用于指定目录的权限,默认值为 0o777。该参数是一个对象,可以包含以下属性: * `recursive`:一个布尔值,指定是否递归地创建目录及其父级目录。默认值为`false`。如果设置为`true`,则会在创建目录时自动创建缺失的父级目录。 * `mode`:一个整数,指定目录的权限。默认值为 0o777。 2. 方法使用了 try-catch 语句来处理创建目录时可能发生的错误。如果目录创建成功,控制台会输出`目录已创建`。如果目录已经存在,或者没有足够的权限来创建目录,`fs.mkdirSync`方法将会抛出一个错误对象,可以在 catch 块中捕获并进行处理。 3. recursive: true 方法来递归地创建目录。 | 参数 | 类型 | 描述 | | --- | --- | --- | | `path` | string | 要创建的目录的路径,可以是绝对路径或相对路径。 | | `options` | object | 可选参数,用于指定目录的权限和递归创建。包含以下属性: | | | `mode` | 一个整数,指定目录的权限。默认值为 0o777。 | | | `recursive` | 一个布尔值,指定是否递归地创建目录及其父级目录。默认值为`false`。 | >[danger] ##### 案例 ~~~ const fs = require('fs') // 同步创建目录 try { fs.mkdirSync('./aaa') } catch (e) { // 如果目录已存在会报错 console.log(e) } // 递归创建 try { fs.mkdirSync('./aa/bbb/cccss', { recursive: true }) } catch (e) { // 如果目录已存在会报错 console.log(e) } ~~~