Bagaimana untuk Menyalin, Membandingkan dan Menggabungkan Penampan dalam Node.js?

Bagaimana Untuk Menyalin Membandingkan Dan Menggabungkan Penampan Dalam Node Js



Penampan ialah pengumpulan data binari yang disimpan sementara dalam memori tertentu. Tujuan utamanya adalah untuk mengurus dan memindahkan data binari yang disimpan dari satu tempat ke tempat lain. Dalam Node.js, pengguna boleh mengakses memori tertentu itu dengan bantuan modul 'Penimbal' terbina dalam.

Penampan lebih mirip dengan 'array' JavaScript tetapi dengan satu perbezaan iaitu saiznya tidak boleh diubah setelah ia ditetapkan. Ciri-ciri biasa modul ini ialah menulis, membaca, membandingkan, menyalin, menukar, dan lain-lain lagi. Semua operasi yang ditentukan boleh dilakukan menggunakan kaedah dan sifat terbina dalamnya.

Blog ini akan memberikan penerangan ringkas tentang menyalin, membandingkan dan menggabungkan penimbal dalam Node.js.







Mari kita mulakan dengan operasi 'salinan'.



Bagaimana untuk Menyalin Penampan dalam Node.js?

' Buffer.copy() ” kaedah membolehkan pengguna menyalin satu objek penimbal kepada yang lain. Kaedah ini mengembalikan penimbal yang baru dikemas kini sebagai hasilnya. Cara kerja kaedah ini bergantung pada sintaks berikut:



buf. salinan ( targetBuffer [ , targetStart ] [ , sourceStart ] [ , sumberTamat ] )

Menurut sintaks di atas, kaedah “copy()” menjalankan parameter berikut:





  • targetBuffer : Ia menentukan objek Penampan yang kandungannya perlu disalin ke objek penimbal lain.
  • targetStart : Ia menandakan kedudukan di mana salinan kepada operasi akan bermula. Nilai lalainya ialah '0'.
  • sourceStart : Ia menandakan kedudukan di mana operasi salin akan bermula. Nilai lalainya ialah '0'.
  • sumberTamat : Ia mewakili kedudukan penamat di mana operasi salin akan berhenti. Nilai lalainya ialah 'penghujung penimbal'.

Blok kod berikut menunjukkan pelaksanaan praktikal kaedah 'copy()':

adalah buf1 = Penampan. daripada ( '123' ) ;
adalah buf2 = Penampan. peruntukkan ( 3 ) ;
buf1. salinan ( buf2 ) ;
konsol. log ( 'Kandungan Buffer2 ialah: ' + buf2. menjalin ( ) ) ;

Dalam baris kod di atas:



  • ' dari() ” kaedah mencipta objek penimbal dengan integer yang ditentukan.
  • ' alloc() ” kaedah membina objek penimbal dengan saiz yang diperuntukkan.
  • ' salinan() ” kaedah menyalin kandungan sedia ada penimbal pertama ke dalam objek penimbal kedua.
  • ' menjalin() ' kaedah menyahkod kandungan yang disalin ke dalam format rentetan (boleh dibaca manusia) dan kemudian memaparkannya dalam konsol menggunakan ' console.log() ” kaedah.

Pengeluaran
Jalankan arahan yang diberikan untuk memulakan fail '.js':

apl nod. js

Ia boleh dilihat bahawa kandungan satu penimbal telah disalin ke dalam penimbal kedua:

Bagaimana untuk Membandingkan Penampan dalam Node.js?

Untuk membandingkan penimbal dalam Node.js, gunakan ' terbina dalam Buffer.compare() ” kaedah. Kaedah ini membandingkan dua penimbal dan mengembalikan nilai berangka sebagai output standardnya yang menunjukkan perbezaan yang ditentukan. Nilai berangka ini disenaraikan di bawah bersama dengan perbezaan yang ditakrifkan:

  • 0 : Penampan adalah sama.
  • 1 : Penampan 1 lebih besar daripada Penampan 2.
  • -1 : Penampan 1 lebih rendah daripada Penampan 2.

Sintaks

buf. bandingkan ( penampan lain ) ;

Sintaks kaedah 'compare()' hanya menyokong satu hujah penting iaitu ' penampan lain ”.

Mari gunakan sintaks yang ditakrifkan di atas secara praktikal:

adalah buf1 = Penampan. daripada ( 'Linux' ) ;
adalah buf2 = Penampan. daripada ( 'Linux' ) ;
adalah x = Penampan. bandingkan ( buf1 , buf2 ) ;
konsol. log ( x ) ;

adalah buf1 = Penampan. daripada ( 'L' ) ;
adalah buf2 = Penampan. daripada ( 'H' ) ;
adalah x = Penampan. bandingkan ( buf1 , buf2 ) ;
konsol. log ( x ) ;

adalah buf1 = Penampan. daripada ( 'H' ) ;
adalah buf2 = Penampan. daripada ( 'L' ) ;
adalah x = Penampan. bandingkan ( buf1 , buf2 ) ;
konsol. log ( x ) ;

Dalam baris kod di atas:

  • ' daripada() ” kaedah mencipta berbilang objek penimbal dengan rentetan yang ditentukan.
  • ' bandingkan() ” kaedah membandingkan objek penimbal yang ditentukan yang diluluskan sebagai hujahnya.
  • ' console.log() kaedah ” memaparkan hasil kaedah “compare()” pada konsol.

Pengeluaran
Jalankan fail '.js' menggunakan arahan di bawah:

apl nod. js

Nilai berangka yang dipaparkan sebagai output terhasil jelas menunjukkan perbezaan yang ditakrifkan:

Sekarang, teruskan kepada penyatuan penimbal dalam Node.js.

Bagaimana untuk Menggabungkan Penampan dalam Node.js?

' concat() ” kaedah membantu untuk menyertai lebih daripada satu penimbal. Kaedah ini menggabungkan semua penimbal yang disasarkan dalam tatasusunan ke dalam satu objek penimbal dengan menggabungkan kandungannya.

Sintaks

Penampan. concat ( arr , panjang ] )

Sintaks di atas berfungsi pada dua parameter berikut:

  • arr : Ia menentukan tatasusunan penimbal yang ingin disatukan oleh pengguna.
  • panjang : Ia menandakan panjang penimbal bercantum.

Coretan kod berikut secara praktikal menggabungkan penimbal yang diberikan dengan menggunakan kaedah 'concat()' yang ditakrifkan:

adalah buf1 = Penampan. daripada ( ' \n Linux \n ' ) ;
adalah buf2 = Penampan. daripada ( 'Laman web' ) ;
adalah buf3 = Penampan. concat ( [ buf1 , buf2 ] ) ;
konsol. log ( 'Kandungan Buffer3 ialah: ' + buf3. menjalin ( ) ) ;

Dalam coretan kod di atas:

  • ' dari() ” kaedah mencipta dua objek penimbal dengan rentetan yang ditentukan masing-masing.
  • ' concat() ” kaedah menggabungkan penimbal yang ditentukan dalam tatasusunan ke dalam objek penimbal.
  • ' menjalin() ' kaedah menyahkod kandungan penimbal bercantum ke dalam format rentetan (boleh dibaca manusia) dan kemudian memaparkannya dalam konsol menggunakan ' console.log() ” kaedah.

Pengeluaran
Sekarang, jalankan arahan yang dinyatakan di bawah untuk melaksanakan fail '.js':

apl nod. js

Output memaparkan objek penimbal baharu yang dibuat dalam hasil penyambungan penimbal yang ditentukan:

Kami telah membincangkan cara menyalin, membandingkan dan menggabungkan penimbal dalam Nodejs.

Kesimpulan

Untuk menyalin penimbal dalam Nodejs, gunakan ' Buffer.copy() ' dan untuk tujuan perbandingan gunakan ' Buffer.compare() ” kaedah. Di samping itu, untuk menggabungkan penimbal, gunakan ' Buffer.concat() ” kaedah. Semua kaedah ini telah ditetapkan, mudah, serta mudah digunakan. Siaran ini telah memberikan penerangan ringkas tentang menyalin, membandingkan dan menggabungkan penimbal dalam Node.js.