কিভাবে Node.js-এ একটি বাফার কপি, তুলনা এবং সংযুক্ত করবেন?

Kibhabe Node Js E Ekati Baphara Kapi Tulana Ebam Sanyukta Karabena



বাফার হল বাইনারি ডেটার সংগ্রহ যা একটি নির্দিষ্ট মেমরিতে অস্থায়ীভাবে সংরক্ষণ করা হয়। এর মূল উদ্দেশ্য হল সঞ্চিত বাইনারি ডেটা এক জায়গা থেকে অন্য জায়গায় ম্যানেজ করা এবং স্থানান্তর করা। Node.js-এ, ব্যবহারকারী বিল্ট-ইন 'বাফার' মডিউলের সাহায্যে সেই নির্দিষ্ট মেমরি অ্যাক্সেস করতে পারে।

বাফার জাভাস্ক্রিপ্ট 'অ্যারে' এর সাথে আরও বেশি অনুরূপ তবে একটি পার্থক্যের সাথে অর্থাৎ এটি সেট করার পরে এটির আকার পরিবর্তন করা যায় না। এই মডিউলটির সাধারণ বৈশিষ্ট্যগুলি হল লেখা, পড়া, তুলনা করা, অনুলিপি করা, রূপান্তর করা এবং আরও অনেক কিছু। সমস্ত নির্দিষ্ট ক্রিয়াকলাপগুলি এর অন্তর্নির্মিত পদ্ধতি এবং বৈশিষ্ট্যগুলি ব্যবহার করে সঞ্চালিত হতে পারে।

এই ব্লগটি Node.js-এ একটি বাফার অনুলিপি, তুলনা এবং সংযুক্ত করার একটি সংক্ষিপ্ত বিবরণ প্রদান করবে।







আসুন 'কপি' অপারেশন দিয়ে শুরু করি।



Node.js এ কিভাবে একটি বাফার কপি করবেন?

দ্য ' Buffer.copy() ” পদ্ধতি ব্যবহারকারীদের একটি বাফার বস্তু অন্য একটি বাফার কপি করতে অনুমতি দেয়. এই পদ্ধতিটি ফলস্বরূপ একটি নতুন আপডেট করা বাফার প্রদান করে। এই পদ্ধতির কাজ তার নিম্নলিখিত সিনট্যাক্সের উপর নির্ভর করে:



buf অনুলিপি ( টার্গেটবাফার [ , টার্গেট স্টার্ট ] [ , উত্স শুরু ] [ , উৎস শেষ ] )

উপরের সিনট্যাক্স অনুসারে, 'কপি()' পদ্ধতি নিম্নলিখিত পরামিতিগুলির কাজ করে:





  • টার্গেটবাফার : এটি বাফার অবজেক্ট নির্দিষ্ট করে যার বিষয়বস্তু অন্য বাফার অবজেক্টে কপি করা প্রয়োজন।
  • টার্গেট স্টার্ট : এটি সেই অবস্থানকে নির্দেশ করে যেখানে কপি থেকে অপারেশন শুরু হবে। এর ডিফল্ট মান হল '0'।
  • উত্স শুরু : এটি সেই অবস্থানকে নির্দেশ করে যেখানে কপি অপারেশন শুরু হবে। এর ডিফল্ট মান হল '0'।
  • উৎস শেষ : এটি শেষ অবস্থানের প্রতিনিধিত্ব করে যেখানে কপি অপারেশন বন্ধ হবে। এর ডিফল্ট মান হল 'একটি বাফারের শেষ'।

নিম্নলিখিত কোড ব্লকটি 'কপি()' পদ্ধতির ব্যবহারিক বাস্তবায়ন দেখায়:

ছিল buf1 = বাফার। থেকে ( '123' ) ;
ছিল buf2 = বাফার। alloc ( 3 ) ;
buf1. অনুলিপি ( buf2 ) ;
কনসোল লগ ( 'Buffer2 এর বিষয়বস্তু হল:' + buf2। স্ট্রিং ( ) ) ;

উপরের কোড লাইনে:



  • দ্য ' থেকে() ” পদ্ধতি নির্দিষ্ট পূর্ণসংখ্যা সহ একটি বাফার অবজেক্ট তৈরি করে।
  • দ্য ' alloc() ” পদ্ধতি একটি বরাদ্দকৃত আকারের একটি বাফার অবজেক্ট তৈরি করে।
  • দ্য ' অনুলিপি() ” পদ্ধতিটি প্রথম বাফারের প্রাক-বিদ্যমান বিষয়বস্তু দ্বিতীয় বাফার অবজেক্টে কপি করে।
  • দ্য ' স্ট্রিং() ' পদ্ধতি অনুলিপি করা বিষয়বস্তুকে স্ট্রিং বিন্যাসে (মানব-পঠনযোগ্য) ডিকোড করে এবং তারপর এটি ব্যবহার করে কনসোলে প্রদর্শন করে ' console.log() 'পদ্ধতি।

আউটপুট
'.js' ফাইলটি শুরু করতে প্রদত্ত কমান্ডটি চালান:

নোড অ্যাপ। js

এটি দেখা যায় যে একটি বাফারের বিষয়বস্তু দ্বিতীয় বাফারে অনুলিপি করা হয়েছে:

কিভাবে Node.js-এ একটি বাফার তুলনা করবেন?

Node.js-এ একটি বাফার তুলনা করতে, বিল্ট-ইন ব্যবহার করুন “ Buffer.compare() 'পদ্ধতি। এই পদ্ধতিটি দুটি বাফারের তুলনা করে এবং এর মানক আউটপুট হিসাবে একটি সংখ্যাসূচক মান প্রদান করে যা সংজ্ঞায়িত পার্থক্য দেখায়। এই সংখ্যাসূচক মানগুলি তাদের সংজ্ঞায়িত পার্থক্য সহ নীচে তালিকাভুক্ত করা হয়েছে:

  • 0 : বাফার সমান।
  • 1 : বাফার 1 বাফার 2 থেকে বড়।
  • -1 : বাফার 1 বাফার 2 থেকে কম।

বাক্য গঠন

buf তুলনা করা ( অন্যান্য বাফার ) ;

'তুলনা()' পদ্ধতির সিনট্যাক্স শুধুমাত্র একটি অপরিহার্য যুক্তি সমর্থন করে যা হল ' অন্যান্য বাফার

চলুন উপরে-সংজ্ঞায়িত সিনট্যাক্স ব্যবহারিকভাবে ব্যবহার করি:

ছিল buf1 = বাফার। থেকে ( 'লিনাক্স' ) ;
ছিল buf2 = বাফার। থেকে ( 'লিনাক্স' ) ;
ছিল এক্স = বাফার। তুলনা করা ( buf1 , buf2 ) ;
কনসোল লগ ( এক্স ) ;

ছিল buf1 = বাফার। থেকে ( 'এল' ) ;
ছিল buf2 = বাফার। থেকে ( 'এইচ' ) ;
ছিল এক্স = বাফার। তুলনা করা ( buf1 , buf2 ) ;
কনসোল লগ ( এক্স ) ;

ছিল buf1 = বাফার। থেকে ( 'এইচ' ) ;
ছিল buf2 = বাফার। থেকে ( 'এল' ) ;
ছিল এক্স = বাফার। তুলনা করা ( buf1 , buf2 ) ;
কনসোল লগ ( এক্স ) ;

কোডের উপরের লাইনগুলিতে:

  • দ্য ' থেকে() ' পদ্ধতিগুলি নির্দিষ্ট স্ট্রিং সহ একাধিক বাফার অবজেক্ট তৈরি করে।
  • দ্য ' তুলনা করা() ” পদ্ধতি নির্দিষ্ট বাফার অবজেক্টের তুলনা করে যা তার আর্গুমেন্ট হিসাবে পাস করে।
  • দ্য ' console.log() ' পদ্ধতি কনসোলে 'তুলনা()' পদ্ধতির ফলাফল প্রদর্শন করে।

আউটপুট
নিচের কমান্ড ব্যবহার করে '.js' ফাইলটি চালান:

নোড অ্যাপ। js

ফলস্বরূপ আউটপুট হিসাবে প্রদর্শিত সংখ্যাসূচক মানগুলি স্পষ্টভাবে সংজ্ঞায়িত পার্থক্য দেখায়:

এখন, Node.js-এ বাফারের সংমিশ্রণে এগিয়ে যান।

কিভাবে Node.js এ বাফার সংযুক্ত করবেন?

দ্য ' concat() ” পদ্ধতি একাধিক বাফারে যোগদান করতে সাহায্য করে। এই পদ্ধতিটি একটি অ্যারের সমস্ত লক্ষ্যযুক্ত বাফারকে তাদের বিষয়বস্তুগুলিকে একত্রিত করে একটি বাফার অবজেক্টে সংযুক্ত করে।

বাক্য গঠন

বাফার। concat ( arr , দৈর্ঘ্য ] )

উপরের সিনট্যাক্স নিম্নলিখিত দুটি প্যারামিটারে কাজ করে:

  • arr : এটি বাফারের অ্যারে নির্দিষ্ট করে যা ব্যবহারকারীরা একত্রিত করতে চান।
  • দৈর্ঘ্য : এটি সংযুক্ত বাফারের দৈর্ঘ্য নির্দেশ করে।

নিম্নলিখিত কোড স্নিপেট ব্যবহারিকভাবে সংজ্ঞায়িত 'concat()' পদ্ধতি ব্যবহার করে প্রদত্ত বাফারগুলিকে সংযুক্ত করে:

ছিল buf1 = বাফার। থেকে ( ' \n লিনাক্স \n ' ) ;
ছিল buf2 = বাফার। থেকে ( 'ওয়েবসাইট' ) ;
ছিল buf3 = বাফার। concat ( [ buf1 , buf2 ] ) ;
কনসোল লগ ( 'Buffer3 এর বিষয়বস্তু হল:' + buf3. স্ট্রিং ( ) ) ;

উপরের কোড স্নিপেটে:

  • দ্য ' থেকে() ” পদ্ধতি যথাক্রমে নির্দিষ্ট স্ট্রিং দিয়ে দুটি বাফার অবজেক্ট তৈরি করে।
  • দ্য ' concat() ” পদ্ধতি একটি অ্যারেতে নির্দিষ্ট বাফারকে একটি বাফার অবজেক্টে যুক্ত করে।
  • দ্য ' স্ট্রিং() ' পদ্ধতিটি সংযুক্ত বাফারের বিষয়বস্তুকে স্ট্রিং বিন্যাসে (মানব-পাঠযোগ্য) ডিকোড করে এবং তারপর এটি ব্যবহার করে কনসোলে প্রদর্শন করে ' console.log() 'পদ্ধতি।

আউটপুট
এখন, '.js' ফাইলটি চালানোর জন্য নীচের নির্দেশিত কমান্ডটি চালান:

নোড অ্যাপ। জেএস

আউটপুট একটি নতুন বাফার অবজেক্ট প্রদর্শন করে যা নির্দিষ্ট বাফারগুলির সংমিশ্রণ ফলাফলে তৈরি করা হয়:

আমরা কভার করেছি কিভাবে Nodejs-এ বাফারটি কপি, তুলনা এবং সংযুক্ত করা যায়।

উপসংহার

নোডেজে বাফারটি অনুলিপি করতে, ' Buffer.copy() 'এবং তুলনামূলক উদ্দেশ্যে প্রয়োগ করুন' Buffer.compare() 'পদ্ধতি। উপরন্তু, বাফার একত্রিত করতে, ব্যবহার করুন “ Buffer.concat() 'পদ্ধতি। এই সমস্ত পদ্ধতি পূর্ব-সংজ্ঞায়িত, সহজ, সেইসাথে ব্যবহার করা সহজ। এই পোস্টটি Node.js-এ একটি বাফার অনুলিপি, তুলনা এবং সংযুক্ত করার একটি সংক্ষিপ্ত বিবরণ প্রদান করেছে।