Node.js之Buffer(缓冲器)

2023-11-22 03:36
文章标签 js node buffer 缓冲器

本文主要是介绍Node.js之Buffer(缓冲器),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Buffer的概念
Buffer 是一个类似于数组的 对象,用于表示固定长度的字节序列
Bufer 本质是一段内存空间,专门用来处理 二进制数据。

Buffer创建方法

// 1.alloc
let buf1 = Buffer.alloc(10)
// 使用alloc创造buffer的方法 是一个二进制类 都会归零
console.log(buf1) //<Buffer 00 00 00 00 00 00 00 00 00 00>
// 2.allocUnsafe
let buf2 = Buffer.allocUnsafe(10)
// 与alloc方法是一样的 但不安全 可能会包含旧的内存数据
// 那为什么我们不直接使用alloc方法 因为allocUnsafe方法比alloc方法快一些 不需要做归零操作
console.log(buf2) //<Buffer 00 00 00 00 00 00 00 00 00 00>
// 3.from
let buf3 = Buffer.from("hello")
// 使用了from方法 会把字符转换成 ASCII 然后转换成二进制到Buffer当中
// 我们也可以使用数组 会转换为二进制
let buf4 = Buffer.from([100,100,100,100])
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
console.log(buf4) //<Buffer 64 64 64 64>

Buffer操作方法

Buffer与字符串的转换

let buf3 = Buffer.from("hello")
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
console.log(buf3.toString()) // hello
let buf4 = Buffer.from([100,100,100,100])
console.log(buf4) //<Buffer 64 64 64 64>
console.log(buf4.toString()) // dddd

修改

let buf3 = Buffer.from("hello")
console.log(buf3) //<Buffer 68 65 6c 6c 6f>
buf3[0] = 95
console.log(buf3) // <Buffer 5f 65 6c 6c 6f>
console.log(buf3.toString()) // _ello

感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!

这篇关于Node.js之Buffer(缓冲器)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/407226

相关文章

用js控制视频播放进度基本示例代码

《用js控制视频播放进度基本示例代码》写前端的时候,很多的时候是需要支持要网页视频播放的功能,下面这篇文章主要给大家介绍了关于用js控制视频播放进度的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言html部分:JavaScript部分:注意:总结前言在javascript中控制视频播放

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Go 1.23中Timer无buffer的实现方式详解

《Go1.23中Timer无buffer的实现方式详解》在Go1.23中,Timer的实现通常是通过time包提供的time.Timer类型来实现的,本文主要介绍了Go1.23中Timer无buff... 目录Timer 的基本实现无缓冲区的实现自定义无缓冲 Timer 实现更复杂的 Timer 实现总结在

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

mac安装nvm(node.js)多版本管理实践步骤

《mac安装nvm(node.js)多版本管理实践步骤》:本文主要介绍mac安装nvm(node.js)多版本管理的相关资料,NVM是一个用于管理多个Node.js版本的命令行工具,它允许开发者在... 目录NVM功能简介MAC安装实践一、下载nvm二、安装nvm三、安装node.js总结NVM功能简介N

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

JS 实现复制到剪贴板的几种方式小结

《JS实现复制到剪贴板的几种方式小结》本文主要介绍了JS实现复制到剪贴板的几种方式小结,包括ClipboardAPI和document.execCommand这两种方法,具有一定的参考价值,感兴趣的... 目录一、Clipboard API相关属性方法二、document.execCommand优点:缺点:

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.