The typedArray.from() is an inbuilt function in JavaScript which is used to construct a new typedArray from a normal array or any iterable object.
List of different typedArrays are specified in the table below:
Int8Array(); | Int16Array(); | Uint32Array(); |
Uint8Array(); | Uint16Array(); | Float32Array(); |
Uint8ClampedArray(); | Int32Array(); | Float64Array(); |
Syntax:
typedArray.from(source, mapFn, thisArg)
Parameters: It accepts three parameters which are specified below-
- source: It is a normal array or any iterable object for converting to a typedArray.
- mapFn: It is optional and it is map function to call on every element of the typedArray.
- thisArg: It is optional and it is the value to be used while executing mapFn function.
Return value: It returns a new typedArray instance.
Example 1:
javascript
// Constructing an iterable object var a = new Set([ 5, 10, 15, 20, 25 ]); var b = new Set([ 1, 2, 3, 4, 5 ]); var c = new Set([ 1, 3, 5, 7, 9 ]); var d = new Set([ 2, 4, 6, 8, 10 ]); // Calling from() function A = Uint8Array.from(a); B = Uint8Array.from(b); C = Uint8Array.from(c); D = Uint8Array.from(d); // Printing new typedArray instance console.log(A); console.log(B); console.log(C); console.log(D); |
Output:
5, 10, 15, 20, 25 1, 2, 3, 4, 5 1, 3, 5, 7, 9 2, 4, 6, 8, 10
Example 2:
javascript
// Calling from() function A = Uint16Array.from( '123456' ); B = Uint16Array.from( '80397418327' ); // Printing new typedArray instance console.log(A); console.log(B); |
Output:
1, 2, 3, 4, 5, 6 8, 0, 3, 9, 7, 4, 1, 8, 3, 2, 7
Example 3:
javascript
// Constructing an iterable object var a = new Set([ 5, 10, 15, 20, 25 ]); var b = new Set([ 1, 2, 3, 4, 5 ]); var c = new Set([ 1, 3, 5, 7, 9 ]); var d = new Set([ 2, 4, 6, 8, 10 ]); // Calling from() function A = Uint8Array.from(a, x => x + 1); B = Uint8Array.from(b, x => x + 2); C = Uint8Array.from(c, x => x * 2); D = Uint8Array.from(d); // Printing new typedArray instance console.log(A); console.log(B); console.log(C); console.log(D); |
Output:
6, 11, 16, 21, 26 3, 4, 5, 6, 7 2, 6, 10, 14, 18 2, 4, 6, 8, 10