Uint16Array()
typed array constructor creates an array of 16-bit unsigned integers in the platform byte order.
new Uint16Array(); // new in ES2017 new Uint16Array(length); new Uint16Array(typedArray); new Uint16Array(object); new Uint16Array(buffer [, byteOffset [, length]]);
length
length
argument, an internal array buffer is created in memory, of size
length
multiplied by
BYTES_PER_ELEMENT
bytes, containing zeros.
typedArray
typedArray
argument, which can be an object of any of the typed array types (such as
Int32Array
), the
typedArray
gets copied into a new typed array. Each value in
typedArray
is converted to the corresponding type of the constructor before being copied into the new array. The length of the new typed array will be same as the length of the
typedArray
自变量。
object
object
argument, a new typed array is created as if by the
TypedArray
.from()
方法。
buffer
,
byteOffset
,
length
buffer
, and optionally a
byteOffset
和
length
argument, a new typed array view is created that views the specified
ArrayBuffer
。
byteOffset
and
length
parameters specify the memory range that will be exposed by the typed array view. If both are omitted, all of
buffer
is viewed; if only
length
is omitted, the remainder of
buffer
is viewed.
Uint16Array()
typed array constructor creates 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).
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]);
// 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]
| 规范 |
|---|
|
ECMAScript (ECMA-262)
The definition of 'TypedArray constructors' in that specification. |
| Desktop | Mobile | Server | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Uint16Array()
构造函数
|
Chrome 7 | Edge 12 | Firefox 4 | IE 10 | Opera 11.6 | Safari 5.1 | WebView Android 4 | Chrome Android 18 | Firefox Android 4 | Opera Android 12 | Safari iOS 4.2 | Samsung Internet Android 1.0 | nodejs 0.10 |
| Constructor without arguments | Chrome 7 | Edge 12 | Firefox 55 | IE 10 | Opera 11.6 | Safari 5.1 | WebView Android ≤37 | Chrome Android 18 | Firefox Android 55 | Opera Android 12 | Safari iOS 5 | Samsung Internet Android 1.0 | nodejs 0.10 |
new Uint16Array(iterable)
|
Chrome 39 | Edge 14 | Firefox 52 | IE No | Opera 26 | Safari 10 | WebView Android 39 | Chrome Android 39 | Firefox Android 52 | Opera Android 26 | Safari iOS 10 | Samsung Internet Android 4.0 | nodejs 4.0.0 |
Uint16Array()
without
new
throws
|
Chrome 7 | Edge 14 | Firefox 44 | IE No | Opera 15 | Safari 5.1 | WebView Android ≤37 | Chrome Android 18 | Firefox Android 44 | Opera Android 14 | Safari iOS 5 | Samsung Internet Android 1.0 | nodejs 0.12 |
完整支持
不支持
TypedArray
TypedArray.from()
TypedArray.of()
TypedArray.prototype.copyWithin()
TypedArray.prototype.entries()
TypedArray.prototype.every()
TypedArray.prototype.fill()
TypedArray.prototype.filter()
TypedArray.prototype.find()
TypedArray.prototype.findIndex()
TypedArray.prototype.forEach()
TypedArray.prototype.includes()
TypedArray.prototype.indexOf()
TypedArray.prototype.join()
TypedArray.prototype.keys()
TypedArray.prototype.lastIndexOf()
TypedArray.prototype.map()
TypedArray.prototype.reduce()
TypedArray.prototype.reduceRight()
TypedArray.prototype.reverse()
TypedArray.prototype.set()
TypedArray.prototype.slice()
TypedArray.prototype.some()
TypedArray.prototype.sort()
TypedArray.prototype.subarray()
TypedArray.prototype.toLocaleString()
TypedArray.prototype.toString()
TypedArray.prototype.values()
TypedArray.prototype[@@iterator]()
Int8Array
Uint8Array
Uint8ClampedArray
Int16Array
Uint16Array
Int32Array
Uint32Array
Float32Array
Float64Array
BigInt64Array
BigUint64Array
Function
Object
Object.prototype.__defineGetter__()
Object.prototype.__defineSetter__()
Object.prototype.__lookupGetter__()
Object.prototype.__lookupSetter__()
Object.prototype.hasOwnProperty()
Object.prototype.isPrototypeOf()
Object.prototype.propertyIsEnumerable()
Object.prototype.toLocaleString()
Object.prototype.toSource()
Object.prototype.toString()
Object.prototype.valueOf()
Object.setPrototypeOf()