آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

آموزش کار با ماژول Buffer در Node.js

دوره های مرتبط با این مقاله

آموزش کار با ماژول Buffer در Node.js:

ماژول Buffer در Node.js راهکار مناسبی جهت پردازش و مدیریت اطلاعات باینری (Binary Data) را در سرور فراهم می کند.
شیء Buffer object یک شیء عمومی (Global) در Node.js است و در هنگام استفاده، نیازی نیست تا آن را به وسیله متد require به برنامه خود اضافه کنید.
ساختار کلی استفاده از ماژول Buffer به صورت زیر است:

var buf = Buffer.alloc(15);
            

در کد مثال فوق، یک حافظه بافر (Buffer) به طول 15 کاراکتر را در حافظه ایجاد کرده ایم.
مثال عملی : در کد مثال عملی زیر، دیتای ‘abc’ را توسط ماژول Buffer دریافت کرده ایم. سپس پردازش شده و طول و شماره کاراکترهای آن در خروجی، نشان داده شده است :

var buf = Buffer.from('abc');
console.log(buf);
            

خروجی مثال به صورت زیر است :

< Buffer 61 62 63 >

آموزش متدها و خواص ماژول Buffer در Node.js :

ماژول Buffer در Node.js دارای خواص و متدهای زیر است که می توانید برای کارهای مختلف از آن ها استفاده کنید :

متد
کاربرد
Alloc()
یک شیء بافر (Buffer Object) با طول معین را در حافظه ایجاد می کند.
allocUnsafe()
این متد نیز یک بافر با اندازه معین در حافظه ایجاد می کند، ولی از نوع غیر مطمئن. یعنی ممکن است بافر حاوی اطلاعاتی از بافرهای قبلی باشد.
byteLength()
این متد تعداد بایت (byte) های یک شیء خاص را بر می گرداند.
Compare()
این متد دو شیء بافر (Buffer Object) را با یکدیگر مقایسه می کند.
Concat()
این متد آرایه ای از اشیای بافر (Buffer Object) را به هم پیوند می دهد و یک شیء جدید بافر ایجاد می کند.
Copy()
این متد تعداد معینی از بایت (Byte) های یک شیء بافر را کسر می کند.
Entries()
این متد یک شیء بافر (Buffer Object) را به صورت آرایه ای از شماره اندیس و یکتای عددی بایت هر کاراکتر آن در خروجی بر می گرداند.
Equals()
این متد دو شیء بافر را با هم مقایسه کرده و در صورت برابری آن ها، مقدار true و در غیر اینصورت false برمی گرداند.
Fill()
این متد یک شیء بافر را با مقادیر تعیین شده پر می کند.
From()
این متد یک شیء بافر (Buffer Object) را از روی یک شیء معمولی مثل string آرایه یا بافر تولید می کند.
Includes()
این متد چک می کند آیا شیء بافر مورد نظر حاوی یک مقدار (value) خاصی است یا خیر. مقدار true یا false بر می گرداند.
indexOf()
این متد چک می کند آیا مقدار مورد نظر در شیء بافر وجود دارد یا خیر. در صورت وجود، موقعیت (index) محل قرارگیری آن را ارسال کرده و در غیر اینصورت عدد 1-.
isBuffer()
این متد چک می کند آیا شیء ارسال شده به آن یک شی ء بافر (Buffer Object) است یا خیر.
isEncoding()
این متد چک می کند آیا شیء بافر مورد نظر از روش خاص کدگذاری (Encode) پشتیبانی می کند یا خیر.
Keys()
این متد آرایه ای از کلیدها (keys) در شیء بافر را بر می گرداند.
lastIndexOf()
این متد چک می کند آیا مقدار مورد نظر در شیء بافر (Buffer Object) وجود دارد یا خیر. برای جستجو از انتهای شیء بافر شروع کرده و در صورت پیدا کردن اولین مورد، index محل قرارگیری آن را بر می گرداند. در صورت عدم پیداشدن موردی، عدد 1- را بر می گرداند.
Length()
این متد طول شیء بافر مورد نظر را به صورت Byte بر می گرداند.
ReadDoubleBE()
این متد به اندازه یک متغیر 64 بیت double از شیء بافر را خوانده و نتیجه را به صورت big endian در سیستم بایت بر می گرداند.
ReadFloatBE()
این متد به اندازه یک متغیر 32 بیتی float از شیء بافر خوانده و نتیجه را به صورت big endian در سیستم بایت بر می گرداند.
ReadFloatLE()
این متد به اندازه یک متغیر 32 بیتی float از شیء بافر خوانده و نتیجه را به صورت little endian در سیستم بایت بر می گرداند.
readInt8()
این متد به اندازه یک متغیر 8 بیتی Integer از شیء بافر می خواند.
readInt16BE()
این متد به اندازه یک متغیر 16 بیتی integer از شیء بافر خوانده و نتیجه را به صورت big indian در سیستم بایت بر می گرداند.
readInt16CE()
این متد به اندازه یک متغیر 16 بیتی Integer از شیء بافر خوانده و نتیجه را به صورت little endian در سیستم بایت ارسال می کند.
readInt32BE()
این متد به اندازه یک متغیر 32 بیتی Integer از شیء بافر خوانده و نتیجه را به صورت big indian در سیستم بایت ارسال می کند.
ReadIntBE()
این متد به اندازه تعداد تعیین شده بایتی، از شیء بافر خوانده و نتیجه را در غالب فرمت big endian در سیستم بیت، ارسال می کند.
ReadIntLE()
این متد به اندازه تعداد تعیین شده بایتی، از شیء بافر خوانده و نتیجه را به صورت فرمت little endian در سیستم بیت، برمی گرداند.
readInt8()
این متد به اندازه یک متغیر 8بیتی بدون علامت، از شیء بافر می خواند.
readUInt16BE()
این متد به اندازه یک متغیر 16 بیتی بدون علامت Integer از شیء بافر خوانده و نتیجه را به صورت فرمت big indian بر می گرداند.
readUInt16LE()
این متد به اندازه یک متغیر 16 بیتی بدون علامت Integer از شیء بافر خوانده و نتیجه را به صورت فرمت little endian بر می گرداند.
readUInt32BE()
این متد به اندازه یک متغیر 32 بیتی بدون علامت Integer از شیء بافر خوانده و نتیجه را به صورت فرمت big endian بر می گرداند.
readUInt32LE()
این متد به اندازه یک متغیر 32 بیتی بدون علامت Integer از شیء بافر خوانده و نتیجه را به صورت little endian بر می گرداند.
ReadUIntBE()
این متد به تعداد تعیین شده بایت، از شیء بافر خوانده و نتیجه را در فرمت big endian بر می گرداند.
ReadUIntLE()
این متد به تعداد تعیین شده بایت، از شیء بافر خوانده و نتیجه را در فرمت little endian بر می گرداند.
Slice()
این متد شیء بافر (Buffer Object) مورد نظر را در نقاط مشخص شده تقسیم کرده و اشیای بافر جدیدی از آن می سازد.
Swap16()
این متد ترتیب قرارگیری بایت ها در یک شیء بافر 16 بیتی را معکوس می کند.
Swap32()
این متد ترتیب قرارگیری بایت ها در یک شیء بافر 32 بیتی را تعریف می کند.
Swap64()
این متد ترتیب قرارگیری بایت ها در یک شیء بافر 64 بیتی را با یکدیگر عوض می کند.
Tostring()
این متد یک نسخه متنی رشته ای (string) از شیء بافر هدف را بر می گرداند.
toJSON()
این متد شیء بافر (Buffer Object) را به یک نسخه JSON تبدیل کرده و بر می گرداند.
Values()
این متد، مقادیر موجود در شیء بافر را به صورت یک آرایه بر می گرداند.
Write()
این متد، یک متغیر متن رشته ای (string) را درون یک شیء بافر قرار می دهد.
writeDoubleBE()
این متد با استفاده از فرمت بایت big endian مقادیر مورد نظر را در شیء بافر می نویسد. بایت های ارسالی بایستی از جنس 64 بیتی double باشند.
WriteDoubleLE()
این متد با استفاده از فرمت بایت little endian مقادیر مورد نظر را در شیء بافر (Buffer Object) می نویسد. مقادیر بایت های ارسالی بایستی از جنس 64 بیتی double باشند.
WriteFloatBE()
این متد با استفاده از فرمت بایت big endian مقادیر مورد نظر را در شیء بافر (Buffer Object) می نویسد. مقادیر ارسالی بایستی به صورت متغیر 32 بیتی float باشند.
WriteFloatLE()
این متد، مقادیر بایت هدف را با استفاده از روش little endian در شیء بافر درج می کند. مقادیر بایت های ارسالی بایستی از نوع 32 بیتی float باشد.
writeInt8()
این متد نیز مقادیر Byte مورد نظر را با استفاده از فرمت مناسب درون شیء بافر وارد می کند. مقادیر ارسالی بایستی به فرمت متغیر 8 بیتی Integer باشند.
writeInt16BE()
این متد نیز مقادیر Byte مورد نظر را با استفاده از فرمت مناسب درون شیء بافر درج می کند. بایت های مورد نظر بایستی از نوع متغیر 16 بیتی Integer باشند.
writeInt16LE()
این متد values بایت ارسالی را با استفاده از فرمت little endian در سیستم بایت، درون شیء بافر هدف وارد می کند. بایت های ارسالی بایستی در فرمت 16 بیتی Integer باشند.
writeInt32BE()
این متد مقادیر بایت مورد نظر را با استفاده از کدینگ big endian در سیستم Byte درون شیء بافر وارد می کند. مقادیر ارسالی بایستی از نوع 32 بیتی Integer باشند.
WriteInt32LE()
این متد نیز همانند متد قبل، مقادیر هدف را با استفاده از کد Little endian سیستم بایت، درون شیء بافر درج می کند. مقادیر ارسالی، بایستی از نوع 32 بیتی Integer باشند.
WriteIntBE()
این متد Byte های تعیین شده برای آنرا با استفاده از فرمت big endian در شیء بافر هدف درج می کند.
WriteIntLE()
این متد تعداد Byte معین شده جهت آن را با روش little endian در شیء بافر مورد نظر، درج می کند.
writeUInt10BE()
این متد بایت های تعیین شده را با روش big endian در سیستم بایت درون شیء بافر درج می کند. مقادیر بایت های ارسالی بایستی از نوع متغیر 16 بیتی integer بدون علامت باشد.
writeUInt16LE()
این متد، تعداد بایت های معین شده جهت آن را درون شیء بافر (Buffer Object) هدف، درج می کند. مقادیر ارسالی به این متد بایستی از نوع 16 بیتی Integer بدون علامت باشند.
writeUInt32BE()
این متد، بایت های تعیین شده را درون شیء بافر هدف وارد می کند. این کار را با متد big endian انجام داده و مقادیر ارسالی بایستی از جنس متغیر 32 بیتی بدون علامت Integer باشند.
writeUInt32LE()
این متد، بایت های مورد نظر را درون شیء بافر تعیین شده وارد می کند. این کار را با متد little endian انجام داده و مقادیر ارسالی بایستی از جنس متغیر 32 بیتی Integer بدون علامت باشند.
writeUInt8()
این متد بایت های تعیین شده در برنامه را درون شیء بافر مورد نظر وارد می کند. مقادیر ارسالی در این متد بایستی به صورت متغیر 8 بیتی بدون علامت Integer باشند.
WriteUIntBE()
این متد بایت های تعیین شده جهت آن را با استفاده از سیستم کدینگ big endian درون شیء بافر هدف درج می کند.
WriteUIntLE()
این متد بایت های تعیین شده جهت آن را با استفاده از سیستم کدینگ little endian درون شیء بافر (Buffer Object) مورد هدف، وارد می کند.
  • 26
  •    0
  • تاریخ ارسال :   1398/05/18

دانشجویان گرامی اگر این مطلب برای شما مفید بود لطفا ما را در GooglePlus محبوب کنید
رمز عبور: tahlildadeh.com یا www.tahlildadeh.com
ارسال دیدگاه نظرات کاربران
شماره موبایل دیدگاه
عنوان پست الکترونیک

ارسال

آموزشگاه برنامه نویسی تحلیل داده
آموزشگاه برنامه نویسی تحلیل داده

تمامی حقوق این سایت متعلق به آموزشگاه تحلیل داده می باشد .