JavaScript DataView.buffer — буфер, у який дивиться вікно
Властивість buffer повертає ArrayBuffer, у який дивиться це вікно.
Загальний опис
Це та сама пам'ять, а не копія. Зміни через DataView одразу видно в буфері й у будь-якому іншому вікні, що на нього дивиться.
Потрібна, коли готові дані треба віддати кудись, де очікують саме буфер: у WebSocket.send(), у crypto.subtle, у fetch.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| buffer | 9+ | 15+ | 5.1+ | 12.1+ | 12+ | 10+ |
| Переглядач | ||||
|---|---|---|---|---|
| buffer | 4+ | yes | yes | 4.2+ |
Приклади
+ запропонувати свій приклад у пісочниці
Зібрали пакет через вікно — відправили буфером.
// умовний сокет; у житті це WebSocket
const socket = {
send(payload) {
console.log('Надіслано', payload.byteLength, 'байтів');
},
};
const view = new DataView(new ArrayBuffer(9));
view.setUint8(0, 1);
view.setFloat64(1, 42.5, false);
// та сама пам'ять — не копія
socket.send(view.buffer);
const other = new Uint8Array(view.buffer);
console.log(other[0]); // 1 — бачить те саме
Коментарі
Коментарів ще немає — будьте першим!