जावास्क्रिप्ट टाइपाइज्ड एरे रेफरेंस मैनुअल

JavaScript 类型化数组

在 Javascript 中,类型化数组是二进制数据的类似数组的缓冲区。

不存在名为 TypedArray 的 JavaScript 属性或对象,但属性和方法可以与类型化数组对象一起使用:

实例

const myArr = new Int8Array(10);

亲自试一试

类型化数组的对象

对象 数据类型 范围
Int8Array 有符号整数(字节) -128/127
Uint8Array 无符号整数(八位字节) 0/255
Uint8ClampedArray 无符号整数(八位字节) 0/255
Int16Array 短整数 -32768/32767
Uint16Array 无符号短整数 0/65535
Int32Array 有符号长整数 -231/231-1
Uint32Array 无符号长整数 0/232
Float32Array 浮点 - 7 位有效数字 1.2x10-38/3.4x1038
Float64Array 双精度浮点 - 16 位有效数字 5.0x10-324/1.8x10308
BigInt64Array 有符号大整数 -263/263-1
BigUint64Array अस्वीकृत बड़े यूनिट 0/264

वर्णन

टाइपाइज़ एक्सेस एक एक्सेस नहीं है।

टाइपाइज़ एक्सेस पर isArray() वापस false देता है।

टाइपाइज़ एक्सेस को कई एक्सेस विधियों (जैसे push और pop) का समर्थन नहीं किया जाता है।

टाइपाइज़ एक्सेस, दोनों ही एक्सेस के लिए उदाहरण, दोनों ही बाइनरी डाटा को स्मृति में संग्रह करने के लिए उपयोग किया जाता है।

टाइपाइज़ एक्सेस विधि और गुण

विधि / गुण वर्णन
BYTES_PER_ELEMENT एक एलीमेंट को संचालित करने के लिए आयाम की गुणवत्ता वापस करता है。
fill() सभी एलीमेंट को एक मान से भरता है。
find() एक स्थिति को पूरा करने वाला पहला एलीमेंट वापस करता है。
नाम टाइपाइज़ एक्सेस का नाम वापस करता है。
of() एक टाइपाइज़ एक्सेस बनाने के लिए एक एक्सेस करें
some() यदि कोई एलीमेंट एक स्थिति को पूरा करता है, तो यह true वापस करता है।

Uint8Array और Uint8ClampedArray के बीच का फर्क

Uint8Array और Uint8ClampedArray के बीच का फर्क उसके मान जोड़ने के तरीके में है।

यदि Uint8ClampedArray के एक एलीमेंट को 0-255 रेंज के बाहर का एक मान दिया जाता है, तो यह मूलभूत रूप से 0 या 255 मान लेता है।

टाइपाइज़ एक्सेस उसके मात्र पहले 8 बिट को लेता है।

टाइपाइज़ एक्सेस के लाभ

टाइपाइज़ एक्सेस दोनों ही बाइनरी डाटा का संभाल करने के लिए एक तरीका प्रदान करते हैं जैसे C में काम करने वाले एक्सेस के तरीके के अनुरूप हैं।

टाइपाइज़ एक्सेस मूल यादृच्छिक स्मृति है, इसलिए JavaScript इन्हें किसी भी फ़ंक्शन को सीधे पास कर सकता है बिना कि डाटा को अन्य प्रतिनिधित्व में बदलने की आवश्यकता हो।

टाइपाइज़ एक्सेस एक्सेस करने वाले फ़ंक्शन (कंप्यूटर गेम, WebGL, Canvas, फ़ाइल API, मीडिया API) को डाटा पास करने के लिए ज्यादा तेज़ आम एक्सेस एक्सेस करते हैं।

ब्राउज़र API टाइपाइज़ एक्सेस का समर्थन करता है

Fetch API उदाहरण

fetch(url)
.then(request => request.arrayBuffer())
.then(arrayBuffer =>...);

Canvas उदाहरण

const canvas = document.getElementById('my_canvas');
const context = canvas.getContext('2d');
const imageData = context.getImageData(0, 0, canvas.width, canvas.height);
const uint8ClampedArray = imageData.data;

ब्राउज़र समर्थन

typedArray यह ECMAScript6 (ES6) विशेषता है。

सभी आधुनिक ब्राउज़र एस6 (JavaScript 2015) का समर्थन करते हैं。

च्रोम एज फायरफॉक्स सफारी ऑपेरा
च्रोम एज फायरफॉक्स सफारी ऑपेरा
हाँ हाँ हाँ हाँ हाँ

Internet Explorer 11 (और अधिक पुरानी संस्करण) इसका समर्थन नहीं करता typedArray