Int32Array
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
该 Int32Array ç±»å表示å¨å¹³å°é¡ºåºåèä¸ä¸ä¸ªåè¡¥ç 32 ä½æç¬¦å·çæ´åæ°ç»ã妿éè¦æ§å¶åè顺åºï¼è¯·æ¹ç¨ DataViewãæ¤å
容çåå§å为 0ã䏿¦å建ï¼ä½ å¯ä»¥ä½¿ç¨å¯¹è±¡çæ¹æ³æè
æ åæ°ç»ç´¢å¼çè¯æ³ (å³ä½¿ç¨æ¬å·è¡¨ç¤ºæ³)ã
è¯æ³
new Int32Array(length); new Int32Array(typedArray); new Int32Array(object); new Int32Array(buffer [, byteOffset [, length]]);
æ´å¤å ³äºæé 彿°è¯æ³ååæ°ç详ç»ä¿¡æ¯ï¼è¯·åé *TypedArrayã*
éæå±æ§
Int32Array.BYTES_PER_ELEMENT-
Returns a number value of the element size.
4in the case of anInt32Array. - Int32Array.length
-
Static length property whose value is 3. For the actual length (number of elements), see
Int32Array.prototype.length. Int32Array.prototype-
Prototype for the TypedArray objects.
éææ¹æ³
Int32Array.from()-
ä»ç±»ä¼¼æ°ç»æè å¯è¿ä»£å¯¹è±¡ä¸å建ä¸ä¸ªæ°ç
Int32Arrayãå¦è§Array.from(). Int32Array.of()-
å建ä¸ä¸ªæ°çå ·æå¯åæ°éåæ°ç
Int32Arrayãå¦è§Array.of()ã
å®ä¾å±æ§
è¿ä»å
¶ç¶æ¥å£ TypedArray ç»§æ¿å®ä¾å±æ§ã
Int32Array.prototype.constructor-
è¿åå建å®ä¾ååç彿°ãé»è®¤æ åµä¸ï¼å®æ¯
Int32Arrayçæé 彿°ã Int32Array.prototype.bufferåªè¯»-
è¿åå¨æé æ¶è¢«åºå®ç
Int32Arrayå¼ç¨çArrayBufferï¼å æ¤åªè¯»ã Int32Array.prototype.byteLengthåªè¯»-
è¿åä»å ¶
ArrayBufferå¼å§çInt32Arrayé¿åº¦ç (以åè为åä½)ãå¨æé æ¶è¢«åºå®ï¼å æ¤åªè¯»ã Int32Array.prototype.byteOffsetåªè¯»-
è¿åä»å ¶
ArrayBufferå¼å§çåç§»é (以åè为åä½)ãå¨æé æ¶è¢«åºå®ï¼å æ¤åªè¯»ã Int32Array.prototype.lengthåªè¯»-
è¿å
Int32ArrayInt32Arrayå å«çå ç´ ä¸ªæ°ãå¨æé æ¶è¢«åºå®ï¼å æ¤åªè¯»ã
å®ä¾æ¹æ³
ä»å
¶ç¶æ¥å£ TypedArray ç»§æ¿å®ä¾æ¹æ³ã
示ä¾
ä¸åçæ¹å¼å建ä¸ä¸ª Int32Array
// ä»ä¸ä¸ªæ°å
var int32 = new Int32Array(2);
int32[0] = 42;
console.log(int32[0]); // 42
console.log(int32.length); // 2
console.log(int32.BYTES_PER_ELEMENT); // 4
// ä»ä¸ä¸ªæ°ç»
var arr = new Int32Array([21, 31]);
console.log(arr[1]); // 31
// ä»ä¸ä¸ªå
¶ä» TypedArray
var x = new Int32Array([21, 31]);
var y = new Int32Array(x);
console.log(y[0]); // 21
// ä»ä¸ä¸ª ArrayBuffer
var buffer = new ArrayBuffer(16);
var z = new Int32Array(buffer, 0, 4);
è§è
| è§è |
|---|
| ECMAScript® 2027 Language Specification> # sec-typedarray-objects> |
æµè§å¨å ¼å®¹æ§
å ¼å®¹æ§è¯´æ
Starting with ECMAScript 2015 (ES6), In32Array constructors require to be constructed with a new operator. Calling a Int32Array constructor as a function without new, will throw a TypeError from now on.
var dv = Int32Array([1, 2, 3]);
// TypeError: calling a builtin Int32Array constructor
// without new is forbidden
var dv = new Int32Array([1, 2, 3]);