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

Node.js EventEmitter 和 Buffer

事件名 和 若干个 参数 组成,事件名一个字符串,通常表达一个意思,对于每个事件,EventEmitter支持多个事件监听器。...(event, listener)移除指定事件某个监听器,监听器必须该事件已经注册过监听器。...它接受两个参数第一个事件名称,第二个回调函数名称removeAllListeners([event])移除所有事件所有监听器, 如果指定事件,则移除指定事件所有监听器setMaxListeners...等,只要是支持事件响应核心模块都是EventEmitter子类这样做原因有两点,如下: 1、具有某个实体功能对象实现事件符合语义,事件监听和发生应该是一个对象方法 2、另外,因为JavaScript...Node.js Buffer(缓冲区) 因为JavaScript只有字符串数据类型没有二进制数据类型。但是在处理TCP流文件流时,必须使用二进制数据。

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

nodejs基础概念

Node.js中内置多个事件,可以引入events模块,并通过实例化EventEmitter类来绑定和监听事件。...在Node中:执行异步操作函数将回调函数作为最后一个参数,回调函数接受错误对象作为第一个参数。  ...只要是支持事件响应核心模块都是EventEmitter子类。原因有二: 1.具有某个实体功能对象实现事件符合语义,事件监听和发生应该是一个对象方法。...6.Node.js Buffer(缓冲区) js只有字符串数据类型,没有二进制数据类型。...length参数写入字节数。如果buf没有足够空间保存整个字符串,则只会写入string一部分,只部分解码字符不会被写入。 返回值: 返回实际写入大小。

87620

Node.js核心API使用

未经封装零散对象可以用exports导出,如exports.s=size,因为它只是给exports对象添加新成员,等价于给module.exports添加新成员,导入应用时不用实例化 给封装构造函数导出时必须用...Node.js官方提供原生模块 -querystring模块,该模块用于处理HTTP请求URL中查询字符串 (1). qs.parse(str) 把查询字符串解析为JS对象 ?...Node.js官方提供原生模块-url模块,该模块用于解析一个HTTP请求地址,获取其中各个不同部分 (1). url.parse( str ) 把一个URL字符串解析为一个对象 ?...Node.js官方提供原生模块 -Buffer缓冲区,本质一块内存区域,用于暂存以后要用到数据(可能数字、字符串、二进制图片/音视频等),该区域就称为“缓存”,Bufferglobal成员,使用时无须...(8). fs.statSync(path) 同步返回一个文件目录统计信息对象,常用于判断文件还是文件夹 ?

3.6K10

Node 中核心API使用

Node.js中每个模块都是一个独立构造函数,解释器会为每个.js文件添加如下代码: 每个模块都可以使用自己require()函数引入另一个模块,底层本质就是创建了指定模块一个对象实例。...Node.js官方提供原生模块 -querystring模块模块用于处理HTTP请求URL中查询字符串。...Node.js官方提供原生模块-url模块模块用于解析一个HTTP请求地址,获取其中各个不同部分。...Node.js官方提供原生模块 -Buffer缓冲区 本质一块内存区域,用于暂存以后要用到数据(可能数字、字符串、二进制图片/音视频等),该区域就称为“缓存”,Bufferglobal成员,使用时无须...Node.js官方提供原生模块http模块.

1.9K20

这里有一份Node.js入门指南和实践,请注意查收

process 常用属性 进程命令行参数: process.argv process.argv 一个当前执行进程折参数组,第一个参数 node,第二个参数当前执行.js 文件名,之后执行时设置参数列表...查询字符串 querystring 模块 querystring 模块 Node.js工具模块之一,用于处理 URL 中查询字符串,即:querystring 部分。.../circle')引用时,circle.js 必须在相同目录下才能加载成功。 当没有'/''./'前缀时,所引用模块必须“核心模块”或是 node_modules 中模块。...options 可以是一个对象整数。如果没有提供 options 参数,则 IP v4 和 v6 地址都可以。如果 options 整数,则必须 4 6。...如果 options 对象时,会包含以下两个可选参数: family:可选,IP 版本。如果提供,必须 4 6。不提供则,IP v4 和 v6 地址都可以 hints:可选。

3.5K30

Node.js快速入门

2.2 创建 Node.js 应用 1)引入 required 模块 我们使用 require 指令来载入 http 模块,并将实例 HTTP 赋值给变量 http实例如下: var http...repository - 包代码存放地方类型,可以是 git svn,git 可在 Github 上。 main - main 字段一个模块ID,它是一个指向你程序主要项目。...8、Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但在处理像TCP流文件流时,必须使用到二进制数据。...第一个参数一个字符串,如果没有 参数,只打印一个换行。...模块http 模块主要用于搭建 HTTP 服务端和客户端,使用 HTTP 服务器客户端功能必须调用 http 模块,代码如下: var http = require('http'); 以下演示一个最基本

11.2K10

Nodejs 中 Stream

四、Stream 模块在 Nodejs 中位置 Stream 模块本身主要用于开发者创建新类型实例,对于以消费流对象为主开发者,极少需要直接使用 Stream 模块。...使用read()方法读取数据,如果传入了 size 参数,会返回指定字节数据,当指定size字节不可用时,则返回 null。 不指定 size 参数,会返回内部缓冲区所有数据。...1.事件: 所有流都是 EventEmitter 实例,所以不同流也具有不同事件,事件也就是告知外界自己自身工作状态方式。...Buffer (常被翻译为缓冲区)在 Node.js 中,Buffer 类随 Node 内核一起发布核心库。...原始数据存储在 Buffer 类实例中。一个 Buffer 类似于一个整数数组,但它对应于 V8 堆内存之外一块原始内存。任何数据读写都会产生缓冲区

2.2K10

Node.js 流编程

平台里面每一种流对象,在类型上都属于下面这四个基本抽象类中一个,这些类由 stream 核心模块提供:ReadableWritableDuplexTransform每个 stream 类对象,...,它是一个建议参数,意思说,你最好尊重这个参数,只推入调用方所请求这么多字节(即 highWaterMark 配置项),当然这只是一个建议,不是强迫你必须这么做。...ReadableOptions 接收 options 参数可能会有这样一些属性:encoding: 表示流对象按照什么样编码标准,把缓冲区数据转化成字符串,它默认值 null;objectMode...如果 chunk 字符串,那么 encoding 参数默认 utf8,如果 chunk Buffer,那么该参数值会为系统所忽略。...大家应该意识到,输入给我们这种 Writable 流数据,并不是字符串 Buffer,而应该是对象,因此这种流必须在对象模式下运作。

15110

Node.js》核心技术教程(笔记)

Node.js文件操作 3.1 基本文件操作 Node.js文件操作API由fs(File System)模块提供,该模块提供函数具有异步和同步两个版本,下面只看异步对应API。...(err, stats),statsfs.stats对象(Stats类函数实例),可以通过Stats类中提供函数判断文件相关属性。...Node.js中处理数据I/O 4.1 Buffer缓冲区 Buffer类用来在内存中创建一个专门存放二进制数据缓冲区,也就是说,在内存中预留一定存储空间,用来暂时保存输入输出数据,这样Node.js...6.2.1 HTTP模块常用API 1)http.Server对象 在Node.js中,HTTP服务器http.Server对象,用Node.js所有基于HTTP协议系统,如网站、社交应用甚至代理服务器...2)http.IncomingMessage对象 在HTTP服务器和客户端都会创建http.IncomingMessage对象,它一般由http.Serverrequest事件发送,作为第一个参数传递

1.7K31

Node.js缓冲区(Buffer)究竟是什么?

创建Buffer 在 6.0.0 之前 Node.js 版本中, Buffer 实例使用 Buffer 构造函数创建,该函数根据提供参数以不同方式分配返回 Buffer newBuffer()...zlib.js zlib.js 为 Node.js 核心库之一,其利用了缓冲区(Buffer)功能来操作二进制数据流,提供了压缩解压功能。...参考源代码 zlib.js 源码 加解密 在一些加解密算法中会遇到使用 Buffer,例如 crypto.createCipheriv 第二个参数 key 为 String Buffer 类型,如果...buf.fill(value[, offset[, end]][, encoding]) value: 第一个参数为要填充内容 offset: 偏移量,填充起始位置 end: 结束填充 buf 偏移量...在 HTTP 传输中传输二进制数据,上面例子中 /string 接口直接返回字符串,这时候 HTTP 在传输之前会先将字符串转换为 Buffer 类型,以二进制数据传输,通过流(Stream)方式一点点返回到客户端

6.3K32

开心档之Node.js Buffer(缓冲区)

Node.js Buffer(缓冲区) 图片 JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但在处理像TCP流文件流时,必须使用到二进制数据。...length]][, encoding]) 参数 参数描述如下: string - 写入缓冲区字符串。...offset 偏移量默认值 0, encoding 编码方式默认 utf8。 length 长度将要写入字符串 bytes 大小。 返回 number 类型,表示写入了多少 8 位字节流。...注意:value 必须一个有效 64 位double 类型值。 若参数 noAssert 为 true 将不会验证 value 和 offset 偏移量参数。...注意:value 必须一个有效 64 位double 类型值。 若参数 noAssert 为 true 将不会验证 value 和 offset 偏移量参数

1.1K10

关于 Node.js 之 Buffer

[buffer.001] JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但在处理像 TCP 流文件流时,必须使用到二进制数据。...因此在 Node.js 中,定义了一个 Buffer 类,该类用来创建一个专门存放二进制数据缓存区。 在 Node.js 中,Buffer 类随 Node 内核一起发布核心库。...写入缓冲区 语法 写入 Node 缓冲区语法如下所示: buf.write(string[, offset[, length]][, encoding]) 参数 参数描述如下: string - 写入缓冲区字符串...start - 指定开始读取索引位置,默认为 0。 end - 结束位置,默认为缓冲区末尾。 返回值 解码缓冲区数据并使用指定编码返回字符串。...~ 学习有趣知识,结识有趣朋友,塑造有趣灵魂! 大家好,我〖编程三昧〗作者 隐逸王,我公众号『编程三昧』希望大家多多指教! 你来,怀揣期望,我有墨香相迎!

2K73

Node.js基础常用知识点全总结

路由小练习 12. path路径模块 13. os操作系统模块 14. Buffer二进制缓冲区 从这一节开始,我就要系统地总结Node.js知识点了,我打算把它写成一个系列专栏。...如果你只是要查阅相关模块用法,可以从目录索引导航到那一个模块。 1. http模块 http模块 Node.js 网络关键模块。...:Node.js 会创建 http.Agent 类全局实例,以管理 HTTP 客户端连接持久性和复用,这是 Node.js HTTP 网络关键组成部分。...new URL( ) 传入两个参数第一个参数要解析绝对相对输入网址。如果第一个路径相对,则需要 第二个参数。第二个阐述为基本url地址。...第一个参数当前路径,第二个参数路径。 const fs = require('fs') fs.rename('./test', '.

2.8K30

最全面的 Node.js 资源汇总推荐

【导读】:Node.js 一个开源、跨平台,用于编写服务器和命令行 JavaScript 运行时工具。...awesome-nodejs sindresorhus发起维护 Node.js 资源列表,内容包括:命令行工具、日志、调试、HTTP、构建工具、文件系统、模板、Web 框架、流程控制、文本、图片和数据校验等...- 获取字符串可视宽度 - 显示字符串所需列数 cli-truncate - 在终端中将字符串截断为特定宽度 first-run - 检查是否第一次运行该进程 blessed - 类似于 Curses...- 使散列变得简单,获取缓冲区/字符串/流/文件哈希 dot-prop - 使用 ....- SSH 相关工具 import-lazy - 懒加载一个模块 file-type - 获得一个 Buffer 文件类型 Bottleneck - 速率限制器,使流量控制变得容易 ow - 函数参数验证

3.4K31

为我赵灵儿点赞,express-node-mysql-react全家桶

Async 和 Await 现代异步 JavaScript Node.js 事件触发器 搭建 HTTP 服务器 使用 Node.js 发送 HTTP 请求 在 Node.js 中使用文件描述符 Node.js...事件模块 Node.js 流 阶段六 数据库校验 MySQL 管理 创建数据库 删除数据库 选择数据库 数据类型 创建数据表 删除数据表 插入数据 查询数据 where UPDATE DELETE LIKE...缓冲区 TCP UDP EventLoop 事件循环 Vue 实现前进刷新,后退不刷新效果 Vue 页面权限控制和登陆验证 阶段九 基础数据库术语 mysql教程 HTTP WebSocket React...context concurrent-mode Hooks Others react-fiber-root JSX 函数式组件 类式组件 对state理解 字符串形式ref Update和UpdateQueue...勘误及提问 如果有疑问或者发现错误,可以在相应 issues 进行提问勘误。 License 所有文章采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行许可。

4.9K40
领券