Uint16Array

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

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 unless initialization data is explicitly provided. 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).

Uint16Array is a subclass of the hidden TypedArray class.

Constructor

Image for: Constructor
Uint16Array()

Creates a new Uint16Array object.

Static properties

Image for: Static properties

Also inherits static properties from its parent TypedArray.

Uint16Array.BYTES_PER_ELEMENT

Returns a number value of the element size. 2 in the case of Uint16Array.

Static methods

Image for: Static methods

Inherits static methods from its parent TypedArray.

Instance properties

Image for: Instance properties

Also inherits instance properties from its parent TypedArray.

These properties are defined on Uint16Array.prototype and shared by all Uint16Array instances.

Uint16Array.prototype.BYTES_PER_ELEMENT

Returns a number value of the element size. 2 in the case of a Uint16Array.

Uint16Array.prototype.constructor

The constructor function that created the instance object. For Uint16Array instances, the initial value is the Uint16Array constructor.

Instance methods

Image for: Instance methods

Inherits instance methods from its parent TypedArray.

Examples

Image for: Examples

Different ways to create a Uint16Array

js
// From a length
const 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
const x = new Uint16Array([21, 31]);
console.log(x[1]); // 31

// From another TypedArray
const y = new Uint16Array(x);
console.log(y[0]); // 21

// From an ArrayBuffer
const buffer = new ArrayBuffer(16);
const z = new Uint16Array(buffer, 2, 4);
console.log(z.byteOffset); // 2

// From an iterable
const iterable = (function* () {
  yield* [1, 2, 3];
})();
const uint16FromIterable = new Uint16Array(iterable);
console.log(uint16FromIterable);
// Uint16Array [1, 2, 3]

Specifications

Image for: Specifications
Specification
ECMAScript® 2026 Language Specification
# table-49

Browser compatibility

Image for: Browser compatibility

See also

Image for: See also