DataView.prototype.byteOffset
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
byteOffset 㯠DataView ã¤ã³ã¹ã¿ã³ã¹ã®ã¢ã¯ã»ãµã¼ããããã£ã§ããã®ãã¥ã¼ã® ArrayBuffer ã¾ã㯠SharedArrayBuffer ã®å
é ãããªãã»ããã表ãã¾ãã
試ãã¦ã¿ã¾ããã
// ArrayBuffer ããã¤ãåä½ã®ãµã¤ãºã§ä½æ
const buffer = new ArrayBuffer(16);
const view = new DataView(buffer, 12, 4); // 12 ãã¤ãç®ããç¶ã 4 ãã¤ã
console.log(view.byteOffset);
// äºæ³ãããçµæ: 12
解説
byteOffsetããããã£ã¯ã¢ã¯ã»ãµã¼ããããã£ã§ããããã®è¨å®ã¢ã¯ã»ãµã¼é¢æ° 㯠undefined ã§ããããããã®ããããã£ã¯èªã¿åãå°ç¨ã§ããå¤ã¯ DataView ãæ§ç¯ãããæç¹ã§è¨å®ããã夿´ãããã¨ã¯ã§ãã¾ããããã ããåºç¤ã¨ãªããããã¡ã¼ã®ãµã¤ãºã夿´ããããã¥ã¼ç¯å²ãæå¹ã§ãªããªã£ãå ´åãbyteOffset 㯠0 ã«ãªãã¾ãã
ä¾
>byteOffset ããããã£ã®ä½¿ç¨
const buffer = new ArrayBuffer(8);
const dataview = new DataView(buffer);
dataview.byteOffset; // 0 ï¼ãªãã»ããã®æå®ãªãï¼
const dataview2 = new DataView(buffer, 3);
dataview2.byteOffset; // 3 ï¼DataView ãæ§ç¯ããéã«æå®ãããéãï¼
const buffer2 = new ArrayBuffer(16, { maxByteLength: 32 });
const dataviewLengthTracking = new DataView(buffer2, 4);
dataviewLengthTracking.byteOffset; // 4
buffer2.resize(3);
dataviewLengthTracking.byteOffset; // 0 ï¼ãã¥ã¼ç¯å²ãæå¹ã§ã¯ãªããªã£ãï¼
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-get-dataview.prototype.byteoffset> |