บัฟเฟอร์หมายถึงส่วนที่แยกต่างหากของหน่วยความจำทั้งหมดซึ่งโปรแกรมเมอร์สามารถจัดเก็บข้อมูลตามช่วงเวลาขั้นต่ำได้ ใน Node.js “ กันชน ” หมายถึงคลาสที่ใช้การดำเนินการกับข้อมูลไบนารีดิบ บัฟเฟอร์มีขนาดคงที่และจัดการกับข้อมูลไบนารีเท่านั้น มีสองวิธีที่สามารถสร้างบัฟเฟอร์ได้ และสามารถกำหนดข้อมูลให้กับบัฟเฟอร์ได้ วิธีการหรือ API เหล่านี้คือ “ บัฟเฟอร์จาก() ' และ ' บัฟเฟอร์.จัดสรร() '.
คู่มือนี้จะอธิบายขั้นตอนในการย้ายไปยัง Buffer.from()/Buffer.alloc() API ใน Node.js
วิธีพอร์ตไปยัง Buffer.from()/Buffer.alloc() API ใน Node.js
“ บัฟเฟอร์จาก() ' และ ' บัฟเฟอร์.จัดสรร() ” ทำหน้าที่คล้ายกัน ข้อแตกต่างเพียงอย่างเดียวคือ “Buffer.alloc()” เป็นรูปแบบที่ได้รับการปรับปรุงของเมธอด “Buffer.from()” วิธีการเหล่านี้อธิบายไว้ด้านล่างในส่วนด้านล่างของเรา:
วิธีที่ 1: การใช้วิธี Node.js Buffer.from()
“ บัฟเฟอร์จาก() ” วิธีการสร้างบัฟเฟอร์ใหม่และกำหนดค่าบัฟเฟอร์ใหม่ในรูปแบบของอาร์เรย์ บัฟเฟอร์ หรือสตริงที่ระบุ “ บัฟเฟอร์จาก() ” ส่งคืนบัฟเฟอร์ใหม่ที่มีค่าที่ระบุและอยู่ในรูปแบบการเข้ารหัสที่ให้ไว้ เช่น “ ฐานสิบหก , ' ไบนารี่ ” และอื่น ๆ
วิธีการนี้ส่งคืนวัตถุบัฟเฟอร์โดยใช้ค่าที่เก็บไว้ในบัฟเฟอร์ที่สามารถเข้าถึงได้
ไวยากรณ์
ไวยากรณ์สำหรับ Node.js “ บัฟเฟอร์จาก() ” วิธีการระบุไว้ด้านล่าง:
บัฟเฟอร์.จาก ( วาล, เข้ารหัส ) ;
“ วาล ” เป็นพารามิเตอร์ที่จำเป็นและเก็บค่าหรืออาจเป็นอ็อบเจ็กต์ของอาร์เรย์ที่ต้องเติมภายใน “ กันชน '. พารามิเตอร์ตัวที่สองของ “ เข้ารหัส ” กำหนดรูปแบบการเข้ารหัสเช่น utf8 '.
ในบล็อคโค้ดด้านล่าง บัฟเฟอร์ใหม่ที่มีสตริงแบบสุ่มได้ถูกสร้างขึ้น และแสดงบนคอนโซล:
var สาธิต = Buffer.from ( 'เปลือย' ) ;console.log ( การสาธิต ) ;
ในบรรทัดโค้ดข้างต้น บัฟเฟอร์ใหม่ “ การสาธิต ” ถูกสร้างขึ้นโดยมีสตริง “ หยุด '. บัฟเฟอร์นี้จะแสดงบนคอนโซลเพื่อวัตถุประสงค์ในการตรวจสอบ
หลังจากรันโปรแกรม Node.js ข้างต้นแล้ว บัฟเฟอร์ที่มีค่าจะถูกแสดงบนคอนโซล ค่าบัฟเฟอร์จะถูกแปลงจากอักขระเป็นรูปแบบตัวเลขโดยใช้คำอธิบายประกอบ ASCII:
วิธีที่ 2: การใช้วิธี Node.js Buffer.alloc()
โหนด js “ บัฟเฟอร์.จัดสรร() ” วิธีการคือรูปแบบที่ได้รับการปรับปรุงของ “ บัฟเฟอร์จาก() ” เนื่องจากยังระบุขนาดของบัฟเฟอร์ที่สร้างขึ้นด้วย หากขนาดของบัฟเฟอร์มากกว่าสตริงที่ให้มา สตริงเดียวกันนั้นจะถูกแทรกในบัฟเฟอร์ซ้ำๆ
ไวยากรณ์
ไวยากรณ์สำหรับวิธี Node.js Buffer.alloc() มีการระบุไว้ด้านล่าง:
บัฟเฟอร์.จัดสรร ( ขนาด , วาล, เข้ารหัส )
ในไวยากรณ์ข้างต้น:
-
- “ ขนาด ” คือความยาวของบัฟเฟอร์ที่สร้างขึ้น
- “ วาล ” คือค่าที่กำหนดให้กับบัฟเฟอร์
- “ เข้ารหัส ” เป็นระบบการเข้ารหัสเช่น “ utf8 '.
เยี่ยมชมข้อมูลโค้ดด้านล่างเพื่อความเข้าใจที่ดีขึ้นของ “ บัฟเฟอร์.จัดสรร() ' วิธี:
var demo1 = Buffer.alloc ( 5 , 'ขวาน' ) ;console.log ( การสาธิต1 ) ;
var demo2 = Buffer.alloc ( 5 ) ;
console.log ( การสาธิต2 ) ;
คำอธิบายสำหรับการแสดงบล็อคโค้ดข้างต้นมีดังนี้:
-
- ขั้นแรกให้บัฟเฟอร์ขนาด” 5 ” มีค่าเท่ากับ “ ขวาน ” ถูกสร้างขึ้นโดยใช้ Node.js “ จัดสรร() ' วิธี.
- จากนั้นเก็บบัฟเฟอร์ไว้ในตัวแปรชื่อ “ การสาธิต1 ” ซึ่งจะปรากฏบนหน้าต่างคอนโซล
- จากนั้นสร้างบัฟเฟอร์อื่น “ การสาธิต2 ” ด้วยความยาวของ “ 5 ” แต่ไม่มีการกำหนดค่าให้กับบัฟเฟอร์นี้ ดังนั้นค่าเริ่มต้นจะถูกจัดสรรให้กับบัฟเฟอร์นี้ซึ่งก็คือ “ 0 ” .
ผลลัพธ์หลังจากการคอมไพล์บล็อกโค้ดข้างต้นจะแสดงบัฟเฟอร์ที่สร้างขึ้นพร้อมค่าที่ให้ไว้:
บล็อกนี้ได้อธิบายขั้นตอนการย้ายไปยังเมธอด Buffer.from()/Buffer.alloc() ใน Node.js
บทสรุป
หากต้องการพอร์ตไปยังเมธอด Buffer.from()/Buffer.alloc() ใน Node.js ค่าและประเภทการเข้ารหัสจะถูกส่งไปที่ ' บัฟเฟอร์จาก() ” วิธีการสร้างบัฟเฟอร์ใหม่ ในกรณีของ ' บัฟเฟอร์.จัดสรร() ” ขนาดของบัฟเฟอร์ยังสามารถตั้งค่าตามค่าได้อีกด้วย นั่นคือทั้งหมดที่เกี่ยวกับกระบวนการย้ายไปยังวิธี Buffer.from() และ Buffer.alloc() ใน Node.js