Skip to content
About stdlib...

We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.

The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.

When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.

To join us in bringing numerical computing to the web, get started by checking us out on GitHub, and please consider financially supporting stdlib. We greatly appreciate your continued support!

Uint16Array

NPM versionBuild StatusCoverage Status

Typed array constructor which returns a typed array representing an array of 16-bit unsigned integers in the platform byte order.

Installation

npm install @stdlib/array-uint16

Alternatively,

  • To load the package in a website via a script tag without installation and bundlers, use the ES Module available on the esm branch (see README).
  • If you are using Deno, visit the deno branch (see README for usage intructions).
  • For use in Observable, or in browser/node environments, use the Universal Module Definition (UMD) build available on the umd branch (see README).

The branches.md file summarizes the available branches and displays a diagram illustrating their relationships.

To view installation and usage instructions specific to each branch build, be sure to explicitly navigate to the respective README files on each branch, as linked to above.

Usage

varUint16Array=require('@stdlib/array-uint16');

Uint16Array()

A typed array constructor which returns a typed array representing an array of 16-bit unsigned integers in the platform byte order.

vararr=newUint16Array();// returns <Uint16Array>

Uint16Array( length )

Returns a typed array having a specified length.

vararr=newUint16Array(5);// returns <Uint16Array>[ 0, 0, 0, 0, 0 ]

Uint16Array( typedarray )

Creates a typed array from another typed array.

varFloat32Array=require('@stdlib/array-float32');vararr1=newFloat32Array([5.0,5.0,5.0]);vararr2=newUint16Array(arr1);// returns <Uint16Array>[ 5, 5, 5 ]

Uint16Array( obj )

Creates a typed array from an array-like object or iterable.

vararr=newUint16Array([5.0,5.0,5.0]);// returns <Uint16Array>[ 5, 5, 5 ]

Uint16Array( buffer[, byteOffset[, length]] )

Returns a typed array view of an ArrayBuffer.

varArrayBuffer=require('@stdlib/array-buffer');varbuf=newArrayBuffer(8);vararr=newUint16Array(buf,0,4);// returns <Uint16Array>[ 0, 0, 0, 0 ]

Properties

Uint16Array.BYTES_PER_ELEMENT

Number of bytes per view element.

varnbytes=Uint16Array.BYTES_PER_ELEMENT;// returns 2

Uint16Array.name

Typed array constructor name.

varstr=Uint16Array.name;// returns 'Uint16Array'

Uint16Array.prototype.buffer

Read-only property which returns the ArrayBuffer referenced by the typed array.

vararr=newUint16Array(5);varbuf=arr.buffer;// returns <ArrayBuffer>

Uint16Array.prototype.byteLength

Read-only property which returns the length (in bytes) of the typed array.

vararr=newUint16Array(5);varbyteLength=arr.byteLength;// returns 10

Uint16Array.prototype.byteOffset

Read-only property which returns the offset (in bytes) of the typed array from the start of its ArrayBuffer.

vararr=newUint16Array(5);varbyteOffset=arr.byteOffset;// returns 0

Uint16Array.prototype.BYTES_PER_ELEMENT

Number of bytes per view element.

vararr=newUint16Array(5);varnbytes=arr.BYTES_PER_ELEMENT;// returns 2

Uint16Array.prototype.length

Read-only property which returns the number of view elements.

vararr=newUint16Array(5);varlen=arr.length;// returns 5

Methods

Uint16Array.from( src[, map[, thisArg]] )

Creates a new typed array from an array-like object or an iterable.

vararr=Uint16Array.from([1,2]);// returns <Uint16Array>[ 1, 2 ]

To invoke a function for each src value, provide a callback function.

functionmapFcn(v){returnv*2;}vararr=Uint16Array.from([1,2],mapFcn);// returns <Uint16Array>[ 2, 4 ]

A callback function is provided two arguments:

  • value: source value.
  • index: source index.

To set the callback execution context, provide a thisArg.

functionmapFcn(v){this.count+=1;returnv*2;}varctx={'count': 0};vararr=Uint16Array.from([1,2],mapFcn,ctx);// returns <Uint16Array>[ 2, 4 ]varn=ctx.count;// returns 2

Uint16Array.of( element0[, element1[, ...elementN]] )

Creates a new typed array from a variable number of arguments.

vararr=Uint16Array.of(1,2);// returns <Uint16Array>[ 1, 2 ]

Uint16Array.prototype.copyWithin( target, start[, end] )

Copies a sequence of elements within an array starting at start and ending at end (non-inclusive) to the position starting at target.

vararr=newUint16Array([1,2,3,4,5]);// Copy the last two elements to the first two elements:arr.copyWithin(0,3);varv=arr[0];// returns 4v=arr[1];// returns 5

By default, end equals the number of array elements (i.e., one more than the last array index). To limit the sequence length, provide an end argument.

vararr=newUint16Array([1,2,3,4,5]);// Copy the first two elements to the last two elements:arr.copyWithin(3,0,2);varv=arr[3];// returns 1v=arr[4];// returns 2

When a target, start, and/or end index is negative, the respective index is determined relative to the last array element. The following example achieves the same behavior as the previous example:

vararr=newUint16Array([1,2,3,4,5]);// Copy the first two elements to the last two elements:arr.copyWithin(-2,-5,-3);varv=arr[3];// returns 1v=arr[4];// returns 2

Uint16Array.prototype.entries()

Returns an iterator for iterating over array key-value pairs.

vararr=newUint16Array([1,2]);// Create an iterator:varit=arr.entries();// Iterate over key-value pairs...varv=it.next().value;// returns [ 0, 1 ]v=it.next().value;// returns [ 1, 2 ]varbool=it.next().done;// returns true

Uint16Array.prototype.every( predicate[, thisArg] )

Tests whether all array elements pass a test implemented by a predicate function.

functionpredicate(v){return(v<=1);}vararr=newUint16Array([1,2]);varbool=arr.every(predicate);// returns false

A predicate function is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionpredicate(v){this.count+=1;return(v>=1);}varctx={'count': 0};vararr=newUint16Array([1,2]);varbool=arr.every(predicate,ctx);// returns truevarn=ctx.count;// returns 2

Uint16Array.prototype.fill( value[, start[, end]] )

Fills an array from a start index to an end index (non-inclusive) with a provided value.

vararr=newUint16Array(2);// Set all array elements to the same value:arr.fill(2);varv=arr[0];// returns 2v=arr[1];// returns 2// Set all array elements starting from the first index to the same value:arr.fill(3,1);v=arr[0];// returns 2v=arr[1];// returns 3// Set all array elements, except the last element, to the same value:arr.fill(4,0,arr.length-1);v=arr[0];// returns 4v=arr[1];// returns 3

When a start and/or end index is negative, the respective index is determined relative to the last array element.

vararr=newUint16Array(2);// Set all array elements, except the last element, to the same value:arr.fill(2,-arr.length,-1);varv=arr[0];// returns 2v=arr[1];// returns 0

Uint16Array.prototype.filter( predicate[, thisArg] )

Creates a new array (of the same data type as the host array) which includes those elements for which a predicate function returns a truthy value.

functionpredicate(v){return(v>=2);}vararr1=newUint16Array([1,2,3]);vararr2=arr1.filter(predicate);// returns <Uint16Array>[ 2, 3 ]

If a predicate function does not return a truthy value for any array element, the method returns an empty array.

functionpredicate(v){return(v>=10);}vararr1=newUint16Array([1,2,3]);vararr2=arr1.filter(predicate);// returns <Uint16Array>[]

A predicate function is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionpredicate(v){this.count+=1;return(v>=2);}varctx={'count': 0};vararr1=newUint16Array([1,2,3]);vararr2=arr1.filter(predicate,ctx);varn=ctx.count;// returns 3

Uint16Array.prototype.find( predicate[, thisArg] )

Returns the first array element for which a provided predicate function returns a truthy value.

functionpredicate(v){return(v>2);}vararr=newUint16Array([1,2,3]);varv=arr.find(predicate);// returns 3

If a predicate function does not return a truthy value for any array element, the method returns undefined.

functionpredicate(v){return(v<1);}vararr=newUint16Array([1,2,3]);varv=arr.find(predicate);// returns undefined

A predicate function is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionpredicate(v){this.count+=1;return(v>2);}varctx={'count': 0};vararr=newUint16Array([1,2,3]);varv=arr.find(predicate,ctx);// returns 3varn=ctx.count;// returns 3

Uint16Array.prototype.findIndex( predicate[, thisArg] )

Returns the index of the first array element for which a provided predicate function returns a truthy value.

functionpredicate(v){return(v>=3);}vararr=newUint16Array([1,2,3]);varidx=arr.findIndex(predicate);// returns 2

If a predicate function does not return a truthy value for any array element, the method returns -1.

functionpredicate(v){return(v<1);}vararr=newUint16Array([1,2,3]);varidx=arr.findIndex(predicate);// returns -1

A predicate function is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionpredicate(v){this.count+=1;return(v>=3);}varctx={'count': 0};vararr=newUint16Array([1,2,3]);varidx=arr.findIndex(predicate,ctx);// returns 2varn=ctx.count;// returns 3

Uint16Array.prototype.forEach( fcn[, thisArg] )

Invokes a callback for each array element.

vararr=newUint16Array([1,2,3]);varstr='';functionfcn(v,i){str+=i+':'+v;if(i<arr.length-1){str+=' ';}}arr.forEach(fcn);console.log(str);// => '0:1 1:2 2:3'

The callback is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionfcn(){this.count+=1;}varctx={'count': 0};vararr=newUint16Array([1,2,3]);arr.forEach(fcn,ctx);varn=ctx.count;// returns 3

Uint16Array.prototype.includes( searchElement[, fromIndex] )

Returns a boolean indicating whether an array includes a search element.

vararr=newUint16Array([1,2,3]);varbool=arr.includes(3);// returns truebool=arr.includes(0);// returns false

By default, the method searches the entire array (fromIndex = 0). To begin searching from a specific array index, provide a fromIndex.

vararr=newUint16Array([1,2,3]);varbool=arr.includes(1,1);// returns false

When a fromIndex is negative, the starting index is resolved relative to the last array element.

vararr=newUint16Array([1,2,3]);varbool=arr.includes(1,-2);// returns false

Uint16Array.prototype.indexOf( searchElement[, fromIndex] )

Returns the index of the first array element strictly equal to a search element.

vararr=newUint16Array([1,2,3]);varidx=arr.indexOf(3);// returns 2idx=arr.indexOf(0);// returns -1

By default, the method searches the entire array (fromIndex = 0). To begin searching from a specific array index, provide a fromIndex.

vararr=newUint16Array([1,2,3]);varidx=arr.indexOf(1,1);// returns -1

When a fromIndex is negative, the starting index is resolved relative to the last array element.

vararr=newUint16Array([1,2,3]);varidx=arr.indexOf(1,-2);// returns -1

Uint16Array.prototype.join( [separator] )

Serializes an array by joining all array elements as a string.

vararr=newUint16Array([1,2,3]);varstr=arr.join();// returns '1,2,3'

By default, the method delineates array elements using a comma ,. To specify a custom separator, provide a separator string.

vararr=newUint16Array([1,2,3]);varstr=arr.join('|');// returns '1|2|3'

Uint16Array.prototype.keys()

Returns an iterator for iterating over array keys.

vararr=newUint16Array([1,2]);// Create an iterator:varit=arr.keys();// Iterate over keys...varv=it.next().value;// returns 0v=it.next().value;// returns 1varbool=it.next().done;// returns true

Uint16Array.prototype.lastIndexOf( searchElement[, fromIndex] )

Returns the index of the last array element strictly equal to a search element, iterating from right to left.

vararr=newUint16Array([1,0,2,0,1]);varidx=arr.lastIndexOf(0);// returns 3idx=arr.lastIndexOf(3);// returns -1

By default, the method searches the entire array (fromIndex = -1). To begin searching from a specific array index, provide a fromIndex.

vararr=newUint16Array([1,0,2,0,1]);varidx=arr.lastIndexOf(0,2);// returns 1

When a fromIndex is negative, the starting index is resolved relative to the last array element.

vararr=newUint16Array([1,0,2,0,1]);varidx=arr.lastIndexOf(0,-3);// returns 1

Uint16Array.prototype.map( fcn[, thisArg] )

Maps each array element to an element in a new array having the same data type as the host array.

functionfcn(v){returnv*2;}vararr1=newUint16Array([1,2,3]);vararr2=arr1.map(fcn);// returns <Uint16Array>[ 2, 4, 6 ]

A callback is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionfcn(v){this.count+=1;returnv*2;}varctx={'count': 0};vararr1=newUint16Array([1,2,3]);vararr2=arr1.map(fcn,ctx);varn=ctx.count;// returns 3

Uint16Array.prototype.reduce( fcn[, initialValue] )

Applies a function against an accumulator and each element in an array and returns the accumulated result.

functionfcn(acc,v){returnacc+(v*v);}vararr=newUint16Array([2,1,3]);varv=arr.reduce(fcn);// returns 12

If not provided an initial value, the method invokes a provided function with the first array element as the first argument and the second array element as the second argument.

If provided an initial value, the method invokes a provided function with the initial value as the first argument and the first array element as the second argument.

functionfcn(acc,v){returnacc+(v*v);}vararr=newUint16Array([2,1,3]);varv=arr.reduce(fcn,0);// returns 14

A callback is provided four arguments:

  • acc: accumulated result.
  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

Uint16Array.prototype.reduceRight( fcn[, initialValue] )

Applies a function against an accumulator and each element in an array and returns the accumulated result, iterating from right to left.

functionfcn(acc,v){returnacc+(v*v);}vararr=newUint16Array([2,1,3]);varv=arr.reduceRight(fcn);// returns 8

If not provided an initial value, the method invokes a provided function with the last array element as the first argument and the second-to-last array element as the second argument.

If provided an initial value, the method invokes a provided function with the initial value as the first argument and the last array element as the second argument.

functionfcn(acc,v){returnacc+(v*v);}vararr=newUint16Array([2,1,3]);varv=arr.reduce(fcn,0);// returns 14

A callback is provided four arguments:

  • acc: accumulated result.
  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

Uint16Array.prototype.reverse()

Reverses an array in-place (thus mutating the array on which the method is invoked).

vararr=newUint16Array([2,0,3]);// Reverse the array:arr.reverse();varv=arr[0];// returns 3v=arr[1];// returns 0v=arr[2];// returns 2

Uint16Array.prototype.set( arr[, offset] )

Sets array elements.

vararr=newUint16Array([1,2,3]);// returns <Uint16Array>[ 1, 2, 3 ]// Set the first two array elements:arr.set([4,5]);varv=arr[0];// returns 4v=arr[1];// returns 5

By default, the method starts writing values at the first array index. To specify an alternative index, provide an index offset.

vararr=newUint16Array([1,2,3]);// returns <Uint16Array>[ 1, 2, 3 ]// Set the last two array elements:arr.set([4,5],1);varv=arr[1];// returns 4v=arr[2];// returns 5

Uint16Array.prototype.slice( [begin[, end]] )

Copies array elements to a new array with the same underlying data type as the host array.

vararr1=newUint16Array([1,2,3]);vararr2=arr1.slice();varbool=(arr1===arr2);// returns falsebool=(arr1.buffer===arr2.buffer);// returns falsevarv=arr2[0];// returns 1v=arr2[1];// returns 2v=arr2[2];// returns 3

By default, the method copies elements beginning with the first array element. To specify an alternative array index at which to begin copying, provide a begin index (inclusive).

vararr1=newUint16Array([1,2,3]);vararr2=arr1.slice(1);varlen=arr2.length;// returns 2varv=arr2[0];// returns 2v=arr2[1];// returns 3

By default, the method copies all array elements after begin. To specify an alternative array index at which to end copying, provide an end index (exclusive).

vararr1=newUint16Array([1,2,3]);vararr2=arr1.slice(0,2);varlen=arr2.length;// returns 2varv=arr2[0];// returns 1v=arr2[1];// returns 2

When a begin and/or end index is negative, the respective index is determined relative to the last array element.

vararr1=newUint16Array([1,2,3]);vararr2=arr1.slice(-arr1.length,-1);varlen=arr2.length;// returns 2varv=arr2[0];// returns 1v=arr2[1];// returns 2

Uint16Array.prototype.some( predicate[, thisArg] )

Tests whether at least one array element passes a test implemented by a predicate function.

functionpredicate(v){return(v>=2);}vararr=newUint16Array([1,2]);varbool=arr.some(predicate);// returns true

A predicate function is provided three arguments:

  • value: array element.
  • index: array index.
  • arr: array on which the method is invoked.

To set the callback execution context, provide a thisArg.

functionpredicate(v){this.count+=1;return(v>=2);}varctx={'count': 0};vararr=newUint16Array([1,1]);varbool=arr.some(predicate,ctx);// returns falsevarn=ctx.count;// returns 2

Uint16Array.prototype.sort( [compareFunction] )

Sorts an array in-place (thus mutating the array on which the method is invoked).

vararr=newUint16Array([2,3,0]);// Sort the array (in ascending order):arr.sort();varv=arr[0];// returns 0v=arr[1];// returns 2v=arr[2];// returns 3

By default, the method sorts array elements in ascending order. To impose a custom order, provide a compareFunction.

functiondescending(a,b){returnb-a;}vararr=newUint16Array([2,3,0]);// Sort the array (in descending order):arr.sort(descending);varv=arr[0];// returns 3v=arr[1];// returns 2v=arr[2];// returns 0

The comparison function is provided two array elements, a and b, per invocation, and its return value determines the sort order as follows:

  • If the comparison function returns a value less than zero, then the method sorts a to an index lower than b (i.e., a should come beforeb).
  • If the comparison function returns a value greater than zero, then the method sorts a to an index higher than b (i.e., b should come beforea).
  • If the comparison function returns zero, then the relative order of a and bshould remain unchanged.

Uint16Array.prototype.subarray( [begin[, end]] )

Creates a new typed array view over the same underlying ArrayBuffer and with the same underlying data type as the host array.

vararr1=newUint16Array([1,2,3]);vararr2=arr1.subarray();// returns <Uint16Array>[ 1, 2, 3 ]varbool=(arr1.buffer===arr2.buffer);// returns true

By default, the method creates a typed array view beginning with the first array element. To specify an alternative array index at which to begin, provide a begin index (inclusive).

vararr1=newUint16Array([1,2,3]);vararr2=arr1.subarray(1);// returns <Uint16Array>[ 2, 3 ]varbool=(arr1.buffer===arr2.buffer);// returns true

By default, the method creates a typed array view which includes all array elements after begin. To limit the number of array elements after begin, provide an end index (exclusive).

vararr1=newUint16Array([1,2,3]);vararr2=arr1.subarray(0,2);// returns <Uint16Array>[ 1, 2 ]varbool=(arr1.buffer===arr2.buffer);// returns true

When a begin and/or end index is negative, the respective index is determined relative to the last array element.

vararr1=newUint16Array([1,2,3]);vararr2=arr1.subarray(-arr1.length,-1);// returns <Uint16Array>[ 1, 2 ]varbool=(arr1.buffer===arr2.buffer);// returns true

If the method is unable to resolve indices to a non-empty array subsequence, the method returns an empty typed array.

vararr1=newUint16Array([1,2,3]);vararr2=arr1.subarray(10,-1);// returns <Uint16Array>[]

Uint16Array.prototype.toLocaleString( [locales[, options]] )

Serializes an array as a locale-specific string.

vararr=newUint16Array([1,2,3]);varstr=arr.toLocaleString();// returns '1,2,3'

Uint16Array.prototype.toString()

Serializes an array as a string.

vararr=newUint16Array([1,2,3]);varstr=arr.toString();// returns '1,2,3'

Uint16Array.prototype.values()

Returns an iterator for iterating over array elements.

vararr=newUint16Array([1,2]);// Create an iterator:varit=arr.values();// Iterate over array elements...varv=it.next().value;// returns 1v=it.next().value;// returns 2varbool=it.next().done;// returns true

Examples

varrandu=require('@stdlib/random-base-randu');varround=require('@stdlib/math-base-special-round');varctor=require('@stdlib/array-uint16');vararr;vari;arr=newctor(10);for(i=0;i<arr.length;i++){arr[i]=round(randu()*100.0);}console.log(arr);

See Also


Notice

This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.

For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.

Community

Chat


License

See LICENSE.

Copyright

Copyright © 2016-2026. The Stdlib Authors.

Releases

Sponsor this project

Packages

Used by

Contributors

Languages