Typed Array Methods

در جاوااسکریپت، Typed Arrays (مثل Int8Array, Uint8Array, Float32Array و ...) آرایه‌هایی هستن که فقط شامل نوع مشخصی از داده‌ها هستن و عملکرد بهینه‌ای برای داده‌های عددی دارن.
این آرایه‌ها متدهای مخصوص خودشون رو دارن که شبیه آرایه‌های معمولی هستن.

🔹 ایجاد Typed Array

// Float32Array با ۵ عنصر let floatArr = new Float32Array(5); console.log(floatArr); // [0, 0, 0, 0, 0] // Int8Array از یک آرایه معمولی let intArr = new Int8Array([1, 2, 3, 4]); console.log(intArr); // [1, 2, 3, 4]

🔹 متدهای مهم Typed Array

1. set() → جایگذاری داده‌ها در آرایه

let arr = new Int8Array(5); arr.set([10, 20, 30], 1); // شروع از ایندکس 1 console.log(arr); // [0, 10, 20, 30, 0]

2. subarray() → گرفتن بخشی از آرایه

let arr = new Uint8Array([1, 2, 3, 4, 5]); let sub = arr.subarray(1, 4); // اندیس 1 تا 3 console.log(sub); // [2, 3, 4]

3. slice() → برش آرایه

let arr = new Float32Array([1.1, 2.2, 3.3, 4.4]); let sliced = arr.slice(1, 3); // اندیس 1 تا 2 console.log(sliced); // [2.2, 3.3]

4. map() → اعمال تابع روی هر عنصر

let arr = new Int16Array([1, 2, 3]); let doubled = arr.map(x => x * 2); console.log(doubled); // [2, 4, 6]

5. forEach() → پیمایش آرایه

let arr = new Uint8Array([10, 20, 30]); arr.forEach(x => console.log(x * 2)); // خروجی: // 20 // 40 // 60

6. reduce() → جمع/محاسبه مقادیر

let arr = new Int8Array([1, 2, 3, 4]); let sum = arr.reduce((acc, val) => acc + val, 0); console.log(sum); // 10

7. find() و findIndex()

let arr = new Uint8Array([5, 12, 8, 130, 44]); console.log(arr.find(x => x > 10)); // 12 console.log(arr.findIndex(x => x > 10)); // 1

🔹 تفاوت با آرایه معمولی

  • Typed Arrays فقط شامل یک نوع داده هستن.

  • سرعت و مصرف حافظه بهینه‌تر هست.

  • بعضی متدهای معمول آرایه مثل push() و pop() ندارن.

✅ خلاصه

  • Typed Arrays شامل Int8Array, Uint8Array, Float32Array و ... هستن.

  • متدهای مهم: set(), subarray(), slice(), map(), forEach(), reduce(), find(), findIndex().

  • نمی‌توان از متدهای تغییر طول آرایه مثل push() استفاده کرد.