DataView.setInt8() ফাংশন
setInt8() ফাংশন DataView-এ নির্দিষ্ট পজিশনে সাইনড ৮-বিট ইন্টিজার (-১২৮ থেকে ১২৭) সংরক্ষণ করে। নোট: মূল ডকুমেন্টেশনে "floating point number" বলা হয়েছে যা ভুল - এটি ইন্টিজার।
সিনট্যাক্স
dataView.setInt8(byteOffset, value)
প্যারামিটার
byteOffset- লিখার পজিশন (বাইটে)value- সংরক্ষণ করার সাইনড ৮-বিট ইন্টিজার
উদাহরণ
উদাহরণ ১: বেসিক ব্যবহার
const buffer = new ArrayBuffer(20);
const view = new DataView(buffer);
view.setInt8(1, 362); // ওভারফ্লো: 362 % 256 = 106
console.log(view.getInt8(1)); // 106
উদাহরণ ২: ফ্লোট ভ্যালু
const buffer = new ArrayBuffer(20);
const view = new DataView(buffer);
view.setInt8(1, 362.23); // ডেসিমাল কাটা + ওভারফ্লো
console.log(view.getInt8(1)); // 106
উদাহরণ ৩: খালি পজিশন
const buffer = new ArrayBuffer(20);
const view = new DataView(buffer);
view.setInt8(1);
console.log(view.getInt8(1)); // 0
৮-বিট সাইনড রেঞ্জ ও ওভারফ্লো
রেঞ্জ: -১২৮ থেকে ১২৭। ৩৬২ সেট করলে:
362 = 0x16A (বাইনারি: 1 0110 1010)
নিচের ৮ বিট: 0110 1010 = 0x6A = 106 (পজিটিভ)
দ্রষ্টব্য
- রেঞ্জ বাইরে মান সেট করলে সাইলেন্ট ওভারফ্লো হয়
- নেগেটিভ মান সেট করা যেতে পারে:
view.setInt8(0, -1)→ 255 (0xFF)