1、ArrayBuffer
var buffer = new ArrayBuffer(2);
//向内存申请5个字节的空间,一个字节占8位,也就是2*8=16位
2、DataView
var dataview = new DataView(buffer);//创建dataview视图指向该内存区域
dataview.setInt8(0,'100')
dataview.setInt8(1,'104')
//100和104二进制均是8位
console.log(dataview.getInt8(0))
console.log(dataview.getInt8(1))
//所以根据偏移量能够输出100和104
如果使用setInt8存储位数大于8位的数字会如何呢?
/**
如代码,申请了2个字节的内存空间
第一个字节存了正好8位的数字
第二个字节存的是9位的数字300
最后偏移一个字节量,输出的是44
*/
var buffer = new ArrayBuffer(2);
var dataview = new DataView(buffer);
dataview.setInt8(0,'100')
dataview.setInt8(1,'300')
console.log(dataview.getInt8(1))
如图所示
100 = 1100100
300 = 100101100

第二

最低0.47元/天 解锁文章
1915

被折叠的 条评论
为什么被折叠?



