TypedArray.prototype.set()

 set() 方法用于从指定数组中读取值,并将其存储在类型化数组中。

语法格式

typedarr.set(array [,offset])
typedarr.set(typedarray [,offset])

参数

array
参数array是源数组,指定从哪里拷贝值。源数组中的所有值都会被拷贝到目标数组中去。如果源数组的长度加上偏移值offset的结果超过目标数组的长度,则会抛出异常错误。
typedarray
如果源数组是一个类型化数组(typed array),则源数组和目标数组会共享同一个底层的 ArrayBuffer;浏览器将会智能地将buffer的指定区段拷贝到目标区段中去。
offset 可选
偏移量参数offset指定从什么地方开始使用源数组 array的值进行重写。如果忽略该参数,则默认为0(也就是说,从目标数组的下标为0处开始,使用源数组 array的值覆盖重写)。

返回值

undefined.

抛出的错误异常

RangeError
如果指定的偏移量超出了类型化数组的范围,则该异常会被抛出。

例子

使用set方法

var buffer = new ArrayBuffer(8);
var uint8 = new Uint8Array(buffer);

uint8.set([1,2,3], 3);

console.log(uint8); // Uint8Array [ 0, 0, 0, 1, 2, 3, 0, 0 ]

规范文档

文档 状态 说明
Typed Array Specification Obsolete ECMAScript 6中已废弃。
ECMAScript 2015 (6th Edition, ECMA-262)
TypedArray.prototype.set
Standard 在ECMA标准中初始定义。
ECMAScript Latest Draft (ECMA-262)
TypedArray.prototype.set
Draft  

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

浏览器 Chrome Firefox (Gecko) Internet Explorer Opera Safari
最低版本 7.0 4.0 (2) 10 11.6 5.1
浏览器 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
最低版本 4.0 (Yes) 4.0 (2) 10 11.6 4.2

另可参考