Uint16Array
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
Uint16Array ç±»ååæ°ç»è¡¨ç¤º 16 使 ç¬¦å·æ´æ°ï¼æå¹³å°åèé¡ºåºæåã妿éè¦æ§å¶åè顺åºï¼è¯·ä½¿ç¨ DataView 代æ¿ãå
容被åå§å为 0ã建ç«åï¼å°±å¯ä»¥ä½¿ç¨å¯¹è±¡çæ¹æ³æä½¿ç¨æ åæ°ç»ç´¢å¼è¯æ³ï¼å³ä½¿ç¨æ¬å·è¡¨ç¤ºæ³ï¼å¼ç¨æ°ç»ä¸çå
ç´ ã
æé 彿°
Uint16Array()-
å建ä¸ä¸ªæ°ç
Uint16Array对象ã
éæå±æ§
Uint16Array.BYTES_PER_ELEMENT-
è¿åå ç´ å¤§å°çæ°å¼ãå¨
Uint16Arrayæ åµä¸ä¸º2ã
éææ¹æ³
Uint16Array.from()-
ä»ç±»æ°ç»æå¯è¿ä»£å¯¹è±¡å建ä¸ä¸ªæ°ç
Uint16Arrayãå¯åéArray.from()ã Uint16Array.of()-
å建ä¸ä¸ªæ°çå ·æå¯ååæ°æ°ç®ç
Uint16Arrayãå¯åéArray.of()ã
å®ä¾å±æ§
è¿ä»å
¶ç¶æ¥å£ TypedArray ç»§æ¿å®ä¾å±æ§ã
Uint16Array.prototype.buffer-
è¿å
Uint16Arrayå¨æé æ¶åºå®å¼ç¨çArrayBufferãå æ¤æ¯åªè¯»çã Uint16Array.prototype.byteLength-
è¿å
Uint16Arrayä»ArrayBufferå¼å§çé¿åº¦ï¼ä»¥åè为åä½ï¼ãå¨æå»ºæ¶åºå®ï¼å æ¤æ¯åªè¯»çã Uint16Array.prototype.byteOffset-
è¿å
Uint16Arrayä»ArrayBufferå¼å§çåç§»éï¼ä»¥åè为åä½ï¼ãå¨æå»ºæ¶åºå®ï¼å æ¤æ¯åªè¯»çã Uint16Array.prototype.length-
è¿å
Uint16Arrayä¸å å«çå ç´ æ°éãå¨æå»ºæ¶åºå®ï¼å æ¤æ¯åªè¯»çã
å®ä¾æ¹æ³
ä»å
¶ç¶æ¥å£ TypedArray ç»§æ¿å®ä¾æ¹æ³ã
示ä¾
>å建 Uint16Array çä¸åæ¹æ³
// é¿åº¦
var uint16 = new Uint16Array(2);
uint16[0] = 42;
console.log(uint16[0]); // 42
console.log(uint16.length); // 2
console.log(uint16.BYTES_PER_ELEMENT); // 2
// æ°ç»
var arr = new Uint16Array([21, 31]);
console.log(arr[1]); // 31
// å¦ä¸ä¸ªç±»åæ°ç»
var x = new Uint16Array([21, 31]);
var y = new Uint16Array(x);
console.log(y[0]); // 21
// ä¸ä¸ª ArrayBuffer
var buffer = new ArrayBuffer(8);
var z = new Uint16Array(buffer, 0, 4);
// å¯è¿ä»£
var iterable = (function* () {
yield* [1, 2, 3];
})();
var uint16 = new Uint16Array(iterable);
// Uint16Array[1, 2, 3]
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-typedarray-objects> |