Skip to content
Related Articles
Open in App
Not now

Related Articles

JavaScript ArrayBuffer Object

Improve Article
Save Article
  • Difficulty Level : Hard
  • Last Updated : 15 Dec, 2022
Improve Article
Save Article

The Javascript ArrayBuffer object is used to represent a generic, fixed-length raw binary data buffer. The contents of an ArrayBuffer cannot be directly manipulated and can only be accessed through a DataView Object or one of the typed array objects. These Objects are used to read and write the contents of the buffer.

More than one DataView or typed array objects can be added to one ArrayBuffer and any changes to one object can be easily seen by the other object’s view. The following are the typed arrays: Float32Array, Float64Array, Int8Array, Int16Array, Int32Array, Uint8Array, Uint8ClampedArray, Uint16Array, Uint32Array. 

Syntax:

new ArrayBuffer(byteLength)

Parameters: It accepts one parameter.

  • bytelength: It denotes the size, in bytes, of the array buffer to be created. 

Return value: It returns a new ArrayBuffer object of the specified size and the content is initialized to 0.

Example: In this example, we will see the use of the Javascript ArrayBuffer() method.

javascript




<script>
    //Create a 16byte buffer
    var buffer = new ArrayBuffer(16);
     
    //Create a DataView referring to the buffer
    var view1 = new DataView(buffer);
     
    //Create a Int8Array view referring to the buffer
    var view2 = new Int8Array(buffer);
     
    //Put value of 32bits
    view1.setInt32(0, 0x76543210);
     
    //prints the 32bit value
    console.log(view1.getInt32(0).toString(16));
     
    //prints only 8bit value
    console.log(view1.getInt8(0).toString(16));
    console.log(view2[0].toString(16));
</script>

Output:

76543210
76
76

Properties :

  • ArrayBuffer.byteLength: The byteLength property returns the length of the buffer in bytes.
  • ArrayBuffer.prototype: This property allows the addition of properties to all ArrayBuffer objects.

Methods:

  • ArrayBuffer.isView(arg): If arg is one of the ArrayBuffer views (typed array objects or a DataView) then true is returned otherwise, false is returned.
  • ArrayBuffer.transfer(oldBuffer [, newByteLength]): The contents from the oldbuffer specified is either truncated or zero-extended by the specified newByteLength and is returned as a new ArrayBuffer.

Instance Methods:

  • ArrayBuffer.slice() and ArrayBuffer.prototype.slice(): A new ArrayBuffer is returned whose contents are a copy of this ArrayBuffer’s bytes from begin, inclusive, up to end, exclusive.
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!