Our volunteers haven't translated this article into Tiếng Việt yet. Join us and help get the job done!
You can also read the article in English (US).
The Int16Array
typed array represents an array of twos-complement 16-bit signed 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).
Syntax
new Int16Array(); // new in ES2017 new Int16Array(length); new Int16Array(typedArray); new Int16Array(object); new Int16Array(buffer [, byteOffset [, length]]);
For more information about the constructor syntax and the parameters, see TypedArray.
Properties
Int16Array.BYTES_PER_ELEMENT
- Returns a number value of the element size.
2
in the case of anInt16Array
. - Int16Array.length
- Static length property whose value is 0. For the actual length (number of elements), see
Int16Array.prototype.length
. Int16Array.name
- Returns the string value of the constructor name. In the case of the
Int16Array
type: "Int16Array". Int16Array.prototype
- Prototype for the TypedArray objects.
Methods
Int16Array.from()
- Creates a new
Int16Array
from an array-like or iterable object. See alsoArray.from()
. Int16Array.of()
- Creates a new
Int16Array
with a variable number of arguments. See alsoArray.of()
.
Int16Array
prototype
All Int16Array
objects inherit from %TypedArray%.prototype
.
Properties
Int16Array.prototype.constructor
- Returns the function that created an instance's prototype. This is the
Int16Array
constructor by default. Int16Array.prototype.buffer
Read only- Returns the
ArrayBuffer
referenced by theInt16Array
Fixed at construction time and thus read only. Int16Array.prototype.byteLength
Read only- Returns the length (in bytes) of the
Int16Array
from the start of itsArrayBuffer
. Fixed at construction time and thus read only. Int16Array.prototype.byteOffset
Read only- Returns the offset (in bytes) of the
Int16Array
from the start of itsArrayBuffer
. Fixed at construction time and thus read only. Int16Array.prototype.length
Read only- Returns the number of elements hold in the
Int16Array
. Fixed at construction time and thus read only.
Methods
Int16Array.prototype.copyWithin()
- Copies a sequence of array elements within the array. See also
Array.prototype.copyWithin()
. Int16Array.prototype.entries()
- Returns a new
Array Iterator
object that contains the key/value pairs for each index in the array. See alsoArray.prototype.entries()
. Int16Array.prototype.every()
- Tests whether all elements in the array pass the test provided by a function. See also
Array.prototype.every()
. Int16Array.prototype.fill()
- Fills all the elements of an array from a start index to an end index with a static value. See also
Array.prototype.fill()
. Int16Array.prototype.filter()
- Creates a new array with all of the elements of this array for which the provided filtering function returns true. See also
Array.prototype.filter()
. Int16Array.prototype.find()
- Returns the found value in the array, if an element in the array satisfies the provided testing function or
undefined
if not found. See alsoArray.prototype.find()
. Int16Array.prototype.findIndex()
- Returns the found index in the array, if an element in the array satisfies the provided testing function or -1 if not found. See also
Array.prototype.findIndex()
. Int16Array.prototype.forEach()
- Calls a function for each element in the array. See also
Array.prototype.forEach()
. Int16Array.prototype.includes()
- Determines whether a typed array includes a certain element, returning
true
orfalse
as appropriate. See alsoArray.prototype.includes()
. Int16Array.prototype.indexOf()
- Returns the first (least) index of an element within the array equal to the specified value, or -1 if none is found. See also
Array.prototype.indexOf()
. Int16Array.prototype.join()
- Joins all elements of an array into a string. See also
Array.prototype.join()
. Int16Array.prototype.keys()
- Returns a new
Array Iterator
that contains the keys for each index in the array. See alsoArray.prototype.keys()
. Int16Array.prototype.lastIndexOf()
- Returns the last (greatest) index of an element within the array equal to the specified value, or -1 if none is found. See also
Array.prototype.lastIndexOf()
. Int16Array.prototype.map()
- Creates a new array with the results of calling a provided function on every element in this array. See also
Array.prototype.map()
. Int16Array.prototype.move()
Unimplemented- Former non-standard version of
Int16Array.prototype.copyWithin()
. Int16Array.prototype.reduce()
- Apply a function against an accumulator and each value of the array (from left-to-right) as to reduce it to a single value. See also
Array.prototype.reduce()
. Int16Array.prototype.reduceRight()
- Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value. See also
Array.prototype.reduceRight()
. Int16Array.prototype.reverse()
- Reverses the order of the elements of an array — the first becomes the last, and the last becomes the first. See also
Array.prototype.reverse()
. Int16Array.prototype.set()
- Stores multiple values in the typed array, reading input values from a specified array.
Int16Array.prototype.slice()
- Extracts a section of an array and returns a new array. See also
Array.prototype.slice()
. Int16Array.prototype.some()
- Returns true if at least one element in this array satisfies the provided testing function. See also
Array.prototype.some()
. Int16Array.prototype.sort()
- Sorts the elements of an array in place and returns the array. See also
Array.prototype.sort()
. Int16Array.prototype.subarray()
- Returns a new
Int16Array
from the given start and end element index. Int16Array.prototype.values()
- Returns a new
Array Iterator
object that contains the values for each index in the array. See alsoArray.prototype.values()
. Int16Array.prototype.toLocaleString()
- Returns a localized string representing the array and its elements. See also
Array.prototype.toLocaleString()
. Int16Array.prototype.toString()
- Returns a string representing the array and its elements. See also
Array.prototype.toString()
. Int16Array.prototype[@@iterator]()
- Returns a new
Array Iterator
object that contains the values for each index in the array.
Examples
Different ways to create an Int16Array
:
// From a length var int16 = new Int16Array(2); int16[0] = 42; console.log(int16[0]); // 42 console.log(int16.length); // 2 console.log(int16.BYTES_PER_ELEMENT); // 2 // From an array var arr = new Int16Array([21,31]); console.log(arr[1]); // 31 // From another TypedArray var x = new Int16Array([21, 31]); var y = new Int16Array(x); console.log(y[0]); // 21 // From an ArrayBuffer var buffer = new ArrayBuffer(8); var z = new Int16Array(buffer, 0, 4); // From an iterable var iterable = function*(){ yield* [1,2,3]; }(); var int16 = new Int16Array(iterable); // Int16Array[1, 2, 3]
Specifications
Specification | Status | Comment |
---|---|---|
Typed Array Specification | Obsolete | Superseded by ECMAScript 2015. |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'TypedArray constructors' in that specification. |
Standard | Initial definition in an ECMA standard. Specified that new is required. |
ECMAScript Latest Draft (ECMA-262) The definition of 'TypedArray constructors' in that specification. |
Draft | ECMAScript 2017 changed the Int16Array constructor to use the ToIndex operation and allows constructors with no arguments. |
Browser compatibility
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Basic support | 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 |
Int16Array() 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 ? |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
Compatibility notes
Starting with ECMAScript 2015, Int16Array
constructors require to be constructed with a new
operator. Calling a Int16Array
constructor as a function without new
, will throw a TypeError
from now on.
var dv = Int16Array([1, 2, 3]); // TypeError: calling a builtin Int16Array constructor // without new is forbidden
var dv = new Int16Array([1, 2, 3]);