method Buffer.subarray
Usage in Deno
```typescript import { type Buffer } from "node:node__buffer.d.ts"; ```
Buffer.subarray(start?: number,end?: number,): Buffer & WithArrayBufferLike<this["buffer"]>
Returns a new `Buffer` that references the same memory as the original, but
offset and cropped by the `start` and `end` indices.
Specifying `end` greater than `buf.length` will return the same result as
that of `end` equal to `buf.length`.
This method is inherited from [`TypedArray.prototype.subarray()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/subarray).
Modifying the new `Buffer` slice will modify the memory in the original `Buffer`because the allocated memory of the two objects overlap.
```js
import { Buffer } from 'node:buffer';
// Create a `Buffer` with the ASCII alphabet, take a slice, and modify one byte
// from the original `Buffer`.
const buf1 = Buffer.allocUnsafe(26);
for (let i = 0; i < 26; i++) {
// 97 is the decimal ASCII value for 'a'.
buf1[i] = i + 97;
}
const buf2 = buf1.subarray(0, 3);
console.log(buf2.toString('ascii', 0, buf2.length));
// Prints: abc
buf1[0] = 33;
console.log(buf2.toString('ascii', 0, buf2.length));
// Prints: !bc
```
Specifying negative indexes causes the slice to be generated relative to the
end of `buf` rather than the beginning.
```js
import { Buffer } from 'node:buffer';
const buf = Buffer.from('buffer');
console.log(buf.subarray(-6, -1).toString());
// Prints: buffe
// (Equivalent to buf.subarray(0, 5).)
console.log(buf.subarray(-6, -2).toString());
// Prints: buff
// (Equivalent to buf.subarray(0, 4).)
console.log(buf.subarray(-5, -2).toString());
// Prints: uff
// (Equivalent to buf.subarray(1, 4).)
```
Buffer & WithArrayBufferLike<this["buffer"]>