The Uint16Array
typed array represents an array of 16-bit unsigned integers in the platform byte order. If control over byte order is needed, use DataView
instead. The contents are initialized to 0
. Once established, you can reference elements in the array using the object's methods, or using standard array index syntax (that is, using bracket notation).
new Uint16Array(); // ES2017 新加入的
new Uint16Array(length);
new Uint16Array(typedArray);
new Uint16Array(object);
new Uint16Array(buffer [, byteOffset [, length]]);
获取有关构造函数语法和参数的更多信息,访问TypedArray。
Uint16Array.BYTES_PER_ELEMENT
2
in the case of an Uint16Array
.Uint16Array.prototype.length
.Uint16Array.name
Uint16Array
type: "Uint16Array".Uint16Array.prototype
Uint16Array.from()
Uint16Array
from an array-like or iterable object. See also Array.from()
.Uint16Array.of()
Uint16Array
with a variable number of arguments. See also Array.of()
.Uint16Array
prototypeAll Uint16Array
objects inherit from %TypedArray%.prototype
.
Uint16Array.prototype.constructor
Uint16Array
constructor by default.Uint16Array.prototype.buffer
只读 ArrayBuffer
referenced by the Uint16Array
Fixed at construction time and thus read only.Uint16Array.prototype.byteLength
只读 Uint16Array
from the start of its ArrayBuffer
. Fixed at construction time and thus read only.Uint16Array.prototype.byteOffset
只读 Uint16Array
from the start of its ArrayBuffer
. Fixed at construction time and thus read only.Uint16Array.prototype.length
只读 Uint16Array
. Fixed at construction time and thus read only.Uint16Array.prototype.copyWithin()
Array.prototype.copyWithin()
.Uint16Array.prototype.entries()
Array Iterator
object that contains the key/value pairs for each index in the array. See also Array.prototype.entries()
.Uint16Array.prototype.every()
Array.prototype.every()
.Uint16Array.prototype.fill()
Array.prototype.fill()
.Uint16Array.prototype.filter()
Array.prototype.filter()
.Uint16Array.prototype.find()
undefined
if not found. See also Array.prototype.find()
.Uint16Array.prototype.findIndex()
Array.prototype.findIndex()
.Uint16Array.prototype.forEach()
Array.prototype.forEach()
.Uint16Array.prototype.includes()
true
or false
as appropriate. See also Array.prototype.includes()
.Uint16Array.prototype.indexOf()
Array.prototype.indexOf()
.Uint16Array.prototype.join()
Array.prototype.join()
.Uint16Array.prototype.keys()
Array Iterator
that contains the keys for each index in the array. See also Array.prototype.keys()
.Uint16Array.prototype.lastIndexOf()
Array.prototype.lastIndexOf()
.Uint16Array.prototype.map()
Array.prototype.map()
.Uint16Array.prototype.move()
未实现Uint16Array.prototype.copyWithin()
.Uint16Array.prototype.reduce()
Array.prototype.reduce()
.Uint16Array.prototype.reduceRight()
Array.prototype.reduceRight()
.Uint16Array.prototype.reverse()
Array.prototype.reverse()
.Uint16Array.prototype.set()
Uint16Array.prototype.slice()
Array.prototype.slice()
.Uint16Array.prototype.some()
Array.prototype.some()
.Uint16Array.prototype.sort()
Array.prototype.sort()
.Uint16Array.prototype.subarray()
Uint16Array
from the given start and end element index.Uint16Array.prototype.values()
Array Iterator
object that contains the values for each index in the array. See also Array.prototype.values()
.Uint16Array.prototype.toLocaleString()
Array.prototype.toLocaleString()
.Uint16Array.prototype.toString()
Array.prototype.toString()
.Uint16Array.prototype[@@iterator]()
Array Iterator
object that contains the values for each index in the array.创建 Uint16Array的不同方法
:
// From a length
var uint16 = new Uint16Array(2);
uint16[0] = 42;
console.log(uint16[0]); // 42
console.log(uint16.length); // 2
console.log(uint16.BYTES_PER_ELEMENT); // 2
// From an array
var arr = new Uint16Array([21,31]);
console.log(arr[1]); // 31
// From another TypedArray
var x = new Uint16Array([21, 31]);
var y = new Uint16Array(x);
console.log(y[0]); // 21
// From an ArrayBuffer
var buffer = new ArrayBuffer(8);
var z = new Uint16Array(buffer, 0, 4);
// From an iterable
var iterable = function*(){ yield* [1,2,3]; }();
var uint16 = new Uint16Array(iterable);
// Uint16Array[1, 2, 3]
Specification | Status | Comment |
---|---|---|
Typed Array Specification | Obsolete | Superseded by ECMAScript 2015. |
ECMAScript 2015 (6th Edition, ECMA-262) TypedArray constructors |
Standard | Initial definition in an ECMA standard. Specified that new is required. |
ECMAScript Latest Draft (ECMA-262) TypedArray constructors |
Draft | ECMAScript 2017 changed the Uint16Array constructor to use the ToIndex operation and allows constructors with no arguments. |
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Uint16Array | Chrome Full support 7 | Edge Full support Yes | Firefox Full support 4 | IE Full support 10 | Opera Full support 11.6 | Safari Full support 5.1 | WebView Android Full support 4 | Chrome Android Full support Yes | Edge Mobile Full support Yes | Firefox Android Full support 4 | Opera Android Full support 11.6 | Safari iOS Full support 4.2 | Samsung Internet Android Full support Yes | nodejs Full support 0.10 |
Uint16Array() without new throws | Chrome Full support Yes | Edge Full support Yes | Firefox Full support 44 | IE No support No | Opera Full support Yes | Safari ? | WebView Android ? | Chrome Android ? | Edge Mobile ? | Firefox Android Full support 44 | Opera Android ? | Safari iOS ? | Samsung Internet Android ? | nodejs Full support 0.12 |
Iterable in constructor | Chrome ? | Edge ? | Firefox Full support 52 | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Edge Mobile ? | Firefox Android Full support 52 | Opera Android ? | Safari iOS ? | Samsung Internet Android ? | nodejs Full support 4.0.0 |
Constructor without arguments | Chrome ? | Edge ? | Firefox Full support 55 | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Edge Mobile ? | Firefox Android Full support 55 | Opera Android ? | Safari iOS ? | Samsung Internet Android ? | nodejs ? |
Starting with ECMAScript 2015, Uint16Array
constructors require to be constructed with a new
operator. Calling a Uint16Array
constructor as a function without new
, will throw a TypeError
from now on.
var dv = Uint16Array([1, 2, 3]);
// TypeError: calling a builtin Uint16Array constructor
// without new is forbidden
var dv = new Uint16Array([1, 2, 3]);