The grow() method of SharedArrayBuffer instances grows the SharedArrayBuffer to the specified size, in bytes.
grow(newLength)newLengthThe new length, in bytes, to resize the SharedArrayBuffer to.
None (undefined).
TypeErrorThrown if the SharedArrayBuffer is not growable.
RangeErrorThrown if newLength is larger than the maxByteLength of the SharedArrayBuffer or smaller than the byteLength.
The grow() method grows a SharedArrayBuffer to the size specified by the newLength parameter, provided that the SharedArrayBuffer is growable and the new size is less than or equal to the maxByteLength of the SharedArrayBuffer. New bytes are initialized to 0.
Note that these examples cannot be run directly from the console or an arbitrary web page, because SharedArrayBuffer is not defined unless its security requirements are met.
In this example, we create a 8-byte buffer that is growable to a max length of 16 bytes, then check its growable property, growing it if growable returns true:
const buffer = new SharedArrayBuffer(8, { maxByteLength: 16 });
if (buffer.growable) {
console.log("SAB is growable!");
buffer.grow(12);
}