首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

NodeJS模块研究 - fs

node 的fs文档密密麻麻的 api 非常多,毕竟全面支持对文件系统的操作。文档组织的很好,操作基本分为文件操作、目录操作、文件信息、流这个大方面,编程方式也支持同步、异步和 Promise。...本文记录了几个文档中没详细描写的问题,可以更好地串联fs文档思路: 文件描述符 同步、异步与 Promise 目录与目录项 文件信息 stream 文件描述符 文件描述符是一个非负整数。...所有文件系统的 api 都有同步和异步两种形式。...异步写法写起来容易进入回调地狱。...要检查文件是否存在但随后并不对其进行操作,则建议使用 fs.access()。 ReadStream 与 WriteStream 在 nodejs 中,stream 是个非常重要的库。

90230
您找到你想要的搜索结果了吗?
是的
没有找到

nodejs文件操作扩展fs-extra

fs-extra模块是系统fs模块的扩展,提供了更多便利的API,并继承了fs模块的API,本文详细介绍所有操作方法,方便读者更好的操作服务端文件 fs-extra安装与引入 github地址:https...fs-extra同步操作与异步操作介绍 const fs = require(‘fs-extra’) // 异步两种操作方式 // Async with promises: fs.copy(‘/tmp...} catch (err) { console.error(err) } } copyFiles() fs-extra各方法介绍 异步文件操作方法 copy 复制文件或文件夹 emptyDir 清空文件夹...同步文件操作方法异步方法名后面加上Sync即可) copySync emptyDirSync ensureFileSync ensureDirSync ensureLinkSync ensureSymlinkSync.../package.json’, {name: ‘fs-extra’}) fs-extra简单应用(NodeJS创建一个文件夹) const fse = require(‘fs-extra’); const

10.6K20

读书笔记-《了不起的nodejs》-fs、stream

超喜欢这样的光线~ 对CLI一探究竟 — argv process.argv包含了所有Node程序运行时的参数值: // example.js console.log(process.argv); 看一下运行结果...工作目录 __dirname :获取执行文件时该文件在文件系统中所在的目录 process.cwd :获取程序运行时当前工作目录(current work directory,我是这样理解这个缩写的)...经常用到的就是NODE_env process.env.NODE_ENV = 'production' 来控制程序是运行在生产环境还是开发环境。...对fs一探究竟 — Stream 为了理解stream的威力,先来看两个例子: var fs = require('fs'); fs.readFile('a.txt',function(err,contents...:查找工作目录下的所有css文件,监视它是否发生改变, 发生改变,就将改文件名输出到控制台 var fs = require('fs'); var files = fs.readdirSync(process.cwd

50620

NodeJS异步IO解析

这篇博客就来简单的介绍一下NodeJS异步I/O特点。 一.NodeJS概述:     要学习一个语言或者平台,我们首先应该知道其定义,依据定义来扩展我们的学习思路。...Node的定义:”一个大奖在Chrome JavaScript运行时上的平台,用于构建高速、可伸缩的网络程序。...NodeJS作为一个异步事件驱动的JavaScript运行时,旨在构建可扩展的网络应用程序。...“有关nodejs的背景介绍和安装方法,这里就没有必要介绍了,因为对于nodejs的安装是比较简单,所以在这里赘述就有些显得浪费时间。    ...异步I/O有如下图: ? 三.NodeJS异步编程实例:    前面介绍了异步I/O的相关概念,这里提供一个异步I/O操作的实例: var config = require('.

1.5K90

深入浅出 Nodejs(四):Nodejs 异步 IO 机制

作者:郭泽豪 本篇教程关于Nodejs异步I/O,具体讲异步I/O的实现现状、非I/O的异步API、事件驱动与高性能服务器。...下面我们以最简单的fs.open()方法来作为例子,探索Node到底层之间是如何执行异步I/O调用以及回调函数究竟是如何被调用执行的: fs.open = function(path, flags, mode...;第二个参数是uv_fs_thread_proc方法运行时所需要的参数;第三个参数是执行的标志。...当线程池中有可用线程时,我们会调用uv_fs_thread_proc()方法。uv_fs_thread_proc()方法会根据传入参数的类型调用相应的底层函数。...以uv_fs_open()为例,实际上调用fs_open()方法。 至此,JavaScript调用立即返回,由JavaScript层面发起的异步调用的第一阶段就此结束。

2.2K00

NodeJS中的异步编程经验

关于 Unhandled Rejection 一个 Promise 是一个异步操作的状态机,其可能处于这三种状态之一 pending:异步操作还在执行中 fulfilled:异步操作已经完成 rejected...:异步操作执行失败 Node.js 6.6.0 added a sporadically useful bug/feature: logging unhandled promise rejections...另一种情况是直接在 Promise 中抛出异常: 执行后也会有 UnhandledPromiseRejectionWarning 的警告: Promise API 中有 .catch() 这个方法...Await 关于 Async/Await,可以参考文章:ES7 中的 async await,在这篇文章中详细介绍了 Async/Await 并且和 Promise 进行了对比,Async/Await 在处理异步操作上的优势更明显...async 异步函数返回的是 Promise,所以执行异步函数后,统一需要用 .catch() 对可能出现的 rejection 进行捕捉处理,否则统一也是会出现 UnhandledPromiseRejectionWarning

1.7K20

前端需要去了解的nodejs知识(fs文件处理)

文件系统时nodejs中至关重要的一个模块,它使得JavaScript具备了操作文件的能力。对于所有文件或目录的操作fs都提供了同步和异步两种操作方式。另外nodejs也提供了文件流的处理。...想要熟练掌握nodejs中文件的处理需要先了解以下几个概念:字符,字符集,字符编码,文件流,buffer。 字符:字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。...文件 nodejs中提供文件服务的是fs模块,他能够实现文件、目录的增删改查,以及文件的信息获取。...} 总结 nodejs对于前端来说难点不是他各个的模块的API,这些API和前端使用的JavaScript语法高度类似,基本看下文档就能使用。...真正的难点是这些API背后的一些知识原理,就如本章描述的fs模块,他背后蕴含了计算机对于文件的许多知识内容。 参考文档: 深入浅出nodejs(朴灵)

5310

Nodejs学习笔记(二)——Eclipse中运行调试Nodejs

前篇《Nodejs学习笔记(一)——初识Nodejs》主要介绍了在搭建node环境过程中遇到的小问题以及搭建Eclipse开发Node环境的前提步骤。...本篇主要介绍如何在Eclipse中运行并调试nodejs程序。 1.安装Express。Express是目前最稳定、使用最广泛,而且是Node.js官 方推荐的唯一一个 Web 开发框架。   ...这是已经成功运行了,下面还有如何调试 1.进入RobotProject目录下,执行node --debug app.js(注意是两个中划线) ?   ...至此,便达到了在Eclipse中运行nodejs程序并且可以实现调试的目的,下面就可以安心的学习nodejs代码啦^_^    如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力

5.2K100

Python 异步: 创建和运行异步任务(7)

任务提供独立调度和运行的协程的句柄,并允许查询、取消任务,以及稍后检索结果和异常。异步事件循环管理任务。因此,所有协程都成为事件循环中的任务并作为任务进行管理。让我们仔细看看 asyncio 任务。...什么是异步任务异步任务是一个调度并独立运行 asyncio 协程的对象。它提供了一个调度协程的句柄,asyncio 程序可以查询并使用它来与协程交互。任务是从协程创建的。...因为异步任务是可等待的,这意味着协程可以使用 await 表达式等待任务完成。......返回一个任务实例任务实例可以被丢弃,通过方法与之交互,并由协程等待。这是从 asyncio 程序中的协程创建任务的首选方法。2.2....任务何时运行?创建任务后的一个常见问题是它什么时候运行?虽然我们可以通过 create_task() 函数调度协程作为任务独立运行,但它可能不会立即运行。事实上,直到事件循环有机会运行,任务才会执行。

1.4K00

NodeJS异步流程控制简单介绍

用户注册 传统的实现思路 根据用户名查找记录,如果存在记录,证明用户名已被占用 根据邮箱查找记录,如果存在记录,证明又想已被占用 但是在nodejs中,大家都知道,各种的回调。...简单的查询数据库都是异步的。你可能会这么写: User.findOne({username: user.username}, function (err, doc) { if(!...有没有优雅的实现方法呢?答案是有的!我们用到了async。 优雅的实现方式 async是一个流程控制工具包,可以完美解决我们的问题。...async.parallel() 方法接收两个参数,一个是执行的方法组,一个是回调。...可以是上面那种数组的形式,也可以是对象的形式: { one: function(callback){ }, two: function(callback){ } } 实现方法

84920

Python 异步: 创建和运行异步任务(7)

任务提供独立调度和运行的协程的句柄,并允许查询、取消任务,以及稍后检索结果和异常。异步事件循环管理任务。因此,所有协程都成为事件循环中的任务并作为任务进行管理。...什么是异步任务 异步任务是一个调度并独立运行 asyncio 协程的对象。它提供了一个调度协程的句柄,asyncio 程序可以查询并使用它来与协程交互。 任务是从协程创建的。...因为异步任务是可等待的,这意味着协程可以使用 await 表达式等待任务完成。...返回一个任务实例 任务实例可以被丢弃,通过方法与之交互,并由协程等待。这是从 asyncio 程序中的协程创建任务的首选方法。 2.2....任务何时运行? 创建任务后的一个常见问题是它什么时候运行? 虽然我们可以通过 create_task() 函数调度协程作为任务独立运行,但它可能不会立即运行

72310

深入理解nodejs中的异步编程

但是对于最开始在浏览器中运行的javascript来说,单线程的同步执行环境显然无法满足页面点击,鼠标移动这些响应用户的功能。...于是浏览器实现了一组API,可以让javascript以回调的方式来异步响应页面的请求事件。 更进一步,nodejs引入了非阻塞的 I/O ,从而将异步的概念扩展到了文件访问、网络调用等。...今天,我们将会深入的探讨一下各种异步编程的优缺点和发展趋势。 同步异步和阻塞非阻塞 在讨论nodejs异步编程之前,让我们来讨论一个比较容易混淆的概念,那就是同步,异步,阻塞和非阻塞。...上篇文章我们讲到的setTimeout和setInterval实际上都是异步的回调函数。 回调函数的错误处理 在nodejs中怎么处理回调的错误信息呢?...,并会定时触发resolve方法,并传入参数done。

1.3K30

NodeJs-发展历史和异步IO机制

本文目录 故事的开端 浏览器之战Node的诞生浏览器端JS和Node端JS的区别理解NodeJS的事件驱动和异步IONodeJs能做什么? ? ?...而Google却认为支持现代Web应用的新一代浏览器才刚刚起步,尤其是浏览器负责运行JavaScript的引擎性能还可提升10倍,于是自己偷偷开发了一个高性能的Javascript解析引擎,取名V8,并且开源...他评估了很多种高级语言,发现很多语言虽然同时提供了同步IO和异步IO,但是开发人员一旦用了同步IO,他们就再也懒得写异步IO了,所以,最终,Ryan瞄向了JS。...理解NodeJS的事件驱动和异步IO NodeJS在用户代码层,只启动一个线程来运行用户的代码。...NodeJs能做什么? ? ? ---- 一番雾语:前因后果。

1K30
领券