JavaScript টাইপাইড অ্যারে পরিচিতি হান্ডবুক
- পূর্ববর্তী পৃষ্ঠা JS বিন্যাস
- পরবর্তী পৃষ্ঠা Window অবজেক্ট
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)。
টাইপাইজড অ্যারে হলো মনমানসিক অ্যারে, যা মেমরিতে বাইনারি ডাটা সংরক্ষণের জন্য ব্যবহৃত হয়。
Typed Array পদ্ধতি এবং অ্যাট্রিবিউট
পদ্ধতি / অ্যাট্রিবিউট | বর্ণনা |
---|---|
BYTES_PER_ELEMENT | একটি এলিমেন্ট স্টোরেজের জন্য ব্যবহৃত বাইট সংখ্যা গণনা করা হয়。 |
fill() | সকল এলিমেন্টকে একই মান দিয়ে পূর্ণ করুন。 |
find() | শর্ত মেটানো প্রথম এলিমেন্ট রিটার্ন করুন。 |
name | টাইপাইজড অ্যারের নাম রিটার্ন করুন。 |
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) বৈশিষ্ট্য
সমস্ত আধুনিক ব্রাউজারগুলি ES6 (JavaScript 2015) সমর্থন করে
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ |
Internet Explorer 11 (এবং আরও পুরানো সংস্করণ) এটা সমর্থন করে না typedArray。
- পূর্ববর্তী পৃষ্ঠা JS বিন্যাস
- পরবর্তী পৃষ্ঠা Window অবজেক্ট