码迷,mamicode.com
首页 > 其他好文 > 详细

学习到的一点Buffer

时间:2020-07-22 21:03:23      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:img   inf   loading   safe   mic   load   nod   不能   模块   

今天学习到的buffer是找到的视频,觉得将的挺有意思的呢
在Node.js中,js文件,可以直接通过node js文件的形式运行的
buffer为什么叫缓冲区呢,因为nodejs作为服务器。1.接受用户发过来的请求,2.给数据返回响应
1.请求全部否是二进制数据,存在buffer中
2.把一些数据发送给用户的时候,会把数据转成二进制数据,也是存在缓冲区
buffer的结构和数组很像,操作的方法也和数组类似,但是数组不能存储图片,不能存储mp3,不能存储二进制的文件
buffer弥补数组不足,Buffer就是专门用来存储二进制数据,使用buffer不需要引入模块,直接使用即可
二进制数据在显示时都是以16进制的形式显示的 buffer中最小是00,最大是ff 0-255
Buffer的大小一旦确定,则不能修改,Buffer实际上是对底层内存的直接操作
buffer中的一个元素,占用内存的一个字节
计算器中一个0或一个1 我们称为1位(bit),

// 8bit == 1byte(字节) 
// 8bit=1byte(字节)
// 1024byte=1kb
// 1024kb=1mb
// 1024mb = 1gb
// 1024gb= 1tb
// buffer中的一个元素,占用内存的一个字节
// 一个汉字3个字节

这下面的是在视频学习中的源码

// var str = ‘hello world ‘
// var buf = Buffer.from(str)
// console.log(buf)
// console.log(buf.length)//占用内存的大小
// console.log(str.length)//字符串的长度
// // 创建指定大小的Buffer
// var buf2 = new Buffer(1024)//1024字节的buffer 
// console.log(‘buf2.length‘,buf2.length)
// Buffer构造函数用法不推荐使用
// 创建一个10个字节的buffer
// alloc 分配
var buf2 = Buffer.alloc(10)
// 通过索引来操作buf中的元素
console.log(buf2)
buf2[0]=88
buf2[1]=255
buf2[2] = 0xaa
buf2[10]= 15

// Buffer的大小一旦确定,则不能修改,Buffer实际上是对底层内存的直接操作
// buf2[3] = 256
buf2[3]=255
// 只要数字在控制台或页面中输出一定是10进制
console.log(buf2)
console.log(‘buf2[3]‘,buf2[2])
console.log(‘buf2[2]‘,buf2[2].toString(16)) //可以转成16进制

// for(var i=0;i<buf2.length;i++){
//     console.log(buf2[i])
// }

// Buffer.allocUnsafe(size)创建一个指定大小的buffer,但是buffer中可能含有敏感数据

var buf3 = Buffer.allocUnsafe(10);
console.log(buf3)
// Buffer.from(str)将一个字符串转换为buffer
// Buffer.alloc(size)创建一个指定大小的Buffer
// Buffer.allocUnsafe(size) 创建一个指定大小的Buffer,但是可能包含敏感数据
// 缓冲区 buffer 
// buf.toString() 将缓冲区的数据转换为字符串
var buf4 = Buffer.from(‘我是一段文本数据‘)
console.log(buf4)
console.log(buf4.toString()) 

技术图片
技术图片
本文看自:尚硅谷node基础

学习到的一点Buffer

标签:img   inf   loading   safe   mic   load   nod   不能   模块   

原文地址:https://www.cnblogs.com/smart-girl/p/13360753.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!