当前位置:首页 > JavaScript

js实现文件夹

2026-04-03 22:50:36JavaScript

JavaScript 实现文件夹操作的方法

在 JavaScript 中,文件夹操作通常涉及 Node.js 的文件系统模块(fs)。以下是在 Node.js 环境中创建、读取和删除文件夹的方法:

创建文件夹

使用 fs.mkdir()fs.mkdirSync() 方法创建文件夹:

const fs = require('fs');

// 异步创建文件夹
fs.mkdir('newFolder', (err) => {
  if (err) throw err;
  console.log('Folder created');
});

// 同步创建文件夹
try {
  fs.mkdirSync('newFolder');
  console.log('Folder created');
} catch (err) {
  console.error(err);
}

递归创建多级文件夹

使用 { recursive: true } 选项创建多级目录:

fs.mkdir('path/to/newFolder', { recursive: true }, (err) => {
  if (err) throw err;
});

读取文件夹内容

使用 fs.readdir()fs.readdirSync() 读取文件夹内容:

// 异步读取
fs.readdir('folderName', (err, files) => {
  if (err) throw err;
  files.forEach(file => {
    console.log(file);
  });
});

// 同步读取
try {
  const files = fs.readdirSync('folderName');
  files.forEach(file => {
    console.log(file);
  });
} catch (err) {
  console.error(err);
}

删除文件夹

使用 fs.rmdir()fs.rmdirSync() 删除空文件夹:

// 异步删除
fs.rmdir('folderName', (err) => {
  if (err) throw err;
  console.log('Folder deleted');
});

// 同步删除
try {
  fs.rmdirSync('folderName');
  console.log('Folder deleted');
} catch (err) {
  console.error(err);
}

递归删除非空文件夹

Node.js 14+ 提供了 { recursive: true } 选项:

fs.rm('folderName', { recursive: true }, (err) => {
  if (err) throw err;
  console.log('Folder deleted');
});

检查文件夹是否存在

使用 fs.existsSync() 检查文件夹是否存在:

if (fs.existsSync('folderName')) {
  console.log('Folder exists');
} else {
  console.log('Folder does not exist');
}

浏览器环境中的文件夹操作

在浏览器环境中,可以使用 File System Access API(需要用户授权):

js实现文件夹

async function handleFolder() {
  const dirHandle = await window.showDirectoryPicker();
  for await (const entry of dirHandle.values()) {
    console.log(entry.name);
  }
}

注意:浏览器 API 需要 HTTPS 环境或 localhost 才能正常工作。

标签: 文件夹js
分享给朋友:

相关文章

js实现图片上传

js实现图片上传

图片上传的基本实现 使用HTML的<input type="file">元素配合JavaScript的File API可以实现图片上传功能。HTML部分需要创建一个文件选择输入框和一个用于…

jquery.js

jquery.js

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画设计和 Ajax 交互等操作。以下是关于 jQuery.js 的核心信息和使用方法: 获取 jQ…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js实现导航菜单

js实现导航菜单

使用HTML和CSS创建基础结构 导航菜单的基础结构通常由HTML的无序列表(<ul>)和列表项(<li>)组成,每个列表项包含一个链接(<a>)。CSS用于样式化…

js实现文件夹

js实现文件夹

使用JavaScript创建文件夹 在浏览器端的JavaScript中无法直接操作文件系统创建文件夹,这是出于安全考虑。但在Node.js环境中可以通过文件系统模块(fs)实现。 Node.js中使…

js实现图片移动

js实现图片移动

使用CSS和JavaScript实现图片移动 方法一:使用CSS动画结合JavaScript控制 通过CSS定义动画关键帧,JavaScript动态添加或移除动画类。 /* CSS部分 */ .m…