JavaScript DataView.byteOffset — зсув вікна від початку буфера
Властивість byteOffset показує, з якого байта буфера починається вікно.
Загальний опис
Зсуви всередині вікна рахуються від нього самого, а не від початку буфера. Тобто view.getUint8(0) для вікна зі зсувом 4 прочитає п'ятий байт буфера.
Це зручно при розборі формату по частинах: відкрив вікно на секцію — і працюєш у її власних координатах, не додаючи зсув до кожного звертання.
автор: NagarD
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| byteOffset | 9+ | 15+ | 5.1+ | 12.1+ | 12+ | 10+ |
| Переглядач | ||||
|---|---|---|---|---|
| byteOffset | 4+ | yes | yes | 4.2+ |
Приклади
+ запропонувати свій приклад у пісочниці
Своє вікно на кожну секцію — свої координати.
const buffer = new ArrayBuffer(32);
const header = new DataView(buffer, 0, 8);
const body = new DataView(buffer, 8);
console.log(body.byteOffset); // 8
// координати ВСЕРЕДИНІ вікна — від нуля
body.setUint8(0, 42); // це 8-й байт буфера
console.log(new Uint8Array(buffer)[8]); // 42
Коментарі
Коментарів ще немає — будьте першим!