کار با DataView و ویژگی DataView.byteLength در جاوااسکریپت

javascript dataview byteLength tutorial
20 آبان 1403

سلام دوستان! خب امروز می‌خواهیم درباره‌ی DataView در جاوااسکریپت صحبت کنیم، خصوصاً ویژگی مهمی به نام DataView.byteLength. شاید اول این طور به نظر نرسد، اما DataView یکی از پرکاربردترین ابزارها برای کار با بایت‌ها در جاوااسکریپت است.

از DataView برای خواندن و نوشتن به صورت بایتی در آرایه‌های باینری استفاده می‌شود. این می‌تواند زمانی مفید باشد که بخواهید داده‌های خام (Raw) را بدون ساختار مشخصی دستکاری کنید. فرض کنید شما در حال کار با خروجی سرور یا یک فایل باینری هستید و نیاز دارید داده‌هایی را استخراج کنید که مستقیماً قابل تفسیر نیستند.

ویژگی byteLength طول کل بایت‌های موجود در DataView را باز می‌گرداند. این ویژگی به خصوص هنگامی که با بخش‌های مختلفی از داده‌ها سروکار دارید که ممکن است طول‌های متفاوتی داشته باشند، حیاتی است. مثلاً وقتی که شما داده‌های بیشتری به بافر خود اضافه می‌کنید و نیاز دارید که اندازه‌ی جدید را بدانید.

حالا بیایید با یک مثال ساده این ویژگی را ببینیم. فرض کنید ما یک بافر باینری داریم و می‌خواهیم با استفاده از DataView به آن دسترسی داشته باشیم. در مرحله اول، مستلزم ایجاد یک آرایه بفر مثل آنچه که در زیر آمده است را خواهیم داشت.

نمونه کد

const buffer = new ArrayBuffer(16); // ایجاد یک بافر 16 بایتی
const view = new DataView(buffer);

console.log(view.byteLength); // خروجی: 16

توضیح سطر به سطر کد

const buffer = new ArrayBuffer(16);
این خط یک بافر باینری به اندازه 16 بایت ایجاد می‌کند.

const view = new DataView(buffer);
یک DataView جدید که به این بافر 16 بایتی اشاره دارد ایجاد می‌کند.

console.log(view.byteLength);
طول کل بایت‌های موجود در DataView را که برابر با 16 است، به کنسول چاپ می‌کند.

امیدوارم این توضیحات کمک‌تان کرده باشد تا با DataView و ویژگی byteLength آن بهتر آشنا شوید. دفعه بعد که نیاز داشتید با بایت‌ها کار کنید، حتماً از قدرت DataView در جاوااسکریپت استفاده کنید. تا گفتگو بعدی، مراقب خودتون باشید!

سوالات متداول

؟

چرا از DataView در جاوااسکریپت استفاده کنیم؟

؟

چگونه می‌توانم byteLength یک DataView را تغییر دهم؟