php实现js的Int32Array,类型化数组和 ArrayBuffer

类型化数组和 ArrayBuffer

由 学院君 创建于7个月前, 最后更新于 7个月前

版本号 #1

435 views

0 likes

0 collects

类型化数组就是类数组对象,它和常规数组有以下区别:

类型化数组中的元素都是数字

类型化数组有固定的长度

在创建类型化数组的时候,数组中的元素总是默认初始化为0

总共有8种类型化数组:

3561a07e4bcc6123e7d8aee42343a601.png

类型化数组是用于 元素的 WebGL 3D 图形化 API 中重要的一部分,浏览器已经将它们实现为 WebGL 的一部分。

// 初始化

var bytes = new Uint8Array(1024); // 1KB

for (var i = 0; i < bytes.length; i++) {

bytes[i] = i & 0xFF;

}

var copy = new Uint8Array(bytes);

var ints = new Int32Array([1, 2, 3, 4]);

// set 方法将常规数组复制到类型化数组中

bytes = new Uint8Array(1024);

var pattern = new Uint8Array([0, 1, 2, 3]);

bytes.set(pattern);

bytes.set(pattern, 4);

bytes.set([0, 1, 2, 3], 8);

// 返回部分内容

ints = new Int16Array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]);

var last3 = ints.subarray(ints.length -3, ints.length); // 最后三个

类型化数组是基于字节块的视图,称为「ArrayBuffer」,每个类型化数组都有与基本缓冲区相关的三个属性:

3a652a1b4536f4b53293c45e28094247.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值