อาร์เรย์ที่พิมพ์ด้วย JavaScript เป็นอ็อบเจ็กต์ที่มีลักษณะคล้ายอาร์เรย์และมีกลไกในการเข้าถึงข้อมูลไบนารีดิบ
ออบเจ็กต์อาร์เรย์จะขยายและย่อขนาดแบบไดนามิก และสามารถมีค่า JavaScript ใดก็ได้ เอ็นจิ้น JavaScript ทำการเพิ่มประสิทธิภาพเพื่อให้อาร์เรย์เหล่านี้รวดเร็ว
หมายเหตุ − อาร์เรย์ที่พิมพ์จะต้องไม่สับสนกับอาร์เรย์ปกติ เนื่องจากการเรียก Array.isArray() บนอาร์เรย์ที่พิมพ์จะคืนค่าเป็นเท็จ นอกจากนี้ อาร์เรย์ที่พิมพ์บางวิธีอาจไม่รองรับวิธีการทั้งหมดที่ใช้ได้สำหรับอาร์เรย์ปกติ
อาร์เรย์ที่พิมพ์ JavaScript ถูกนำมาใช้โดยใช้บัฟเฟอร์และมุมมอง
บัฟเฟอร์เป็นอ็อบเจ็กต์ที่แสดงถึงกลุ่มของข้อมูล ไม่มีรูปแบบที่จะพูดถึงและไม่มีกลไกในการเข้าถึงเนื้อหา
ในการเข้าถึงหน่วยความจำที่อยู่ในบัฟเฟอร์ คุณต้องใช้มุมมอง มุมมองจัดเตรียมประเภทข้อมูล ออฟเซ็ตเริ่มต้น และจำนวนองค์ประกอบ ซึ่งจะเปลี่ยนข้อมูลให้เป็นอาร์เรย์ที่พิมพ์
ตัวอย่าง
// create a buffer with a fixed length of 16-bytes let buffer = new ArrayBuffer(16); // Before we can really work with this buffer, we need to create a view. // Let's create a view that treats the data in the buffer as an array of 32-bit signed integers: let int32View = new Int32Array(buffer); // we can access the fields in the array just like a normal array for (let i = 0; i < int32View.length; i++) { int32View[i] = i * 2; } console.log(int32View);
ผลลัพธ์
Int32Array { [Iterator] 0: 0, 1: 2, 2: 4, 3: 6 }