Lodash এর মাধ্যমে ডেট এবং সময় ম্যানেজমেন্ট

Date এবং Time Manipulation - লোড্যাশ (Lodash) - Web Development

290

Lodash একটি শক্তিশালী JavaScript লাইব্রেরি, যা বিভিন্ন ধরনের ডেটা এবং সময় ম্যানিপুলেশনে সাহায্য করে। যদিও Lodash নিজে সময় এবং ডেট ম্যানেজমেন্টের জন্য সরাসরি কোনো প্যাকেজ সরবরাহ করে না, তবে এটি কিছু utility functions সরবরাহ করে যা ডেট এবং সময় সম্পর্কিত কাজগুলো সহজ করে তোলে। Lodash এর _.now(), _.debounce(), এবং _.throttle() ফাংশনগুলো ব্যবহার করে ডেট এবং সময় ম্যানেজমেন্ট সহজে করা যায়।


১. _.now() - বর্তমান সময় পাওয়া

_.now() ফাংশনটি বর্তমান সময় (Unix টাইমস্ট্যাম্প) মিলিসেকেন্ডে রিটার্ন করে। এটি সাধারণত বর্তমান সময়ের সাথে সম্পর্কিত কাজ করতে ব্যবহৃত হয়।

সিনট্যাক্স:

_.now();

উদাহরণ:

const _ = require('lodash');

let currentTime = _.now();
console.log(currentTime); // এটি বর্তমান সময় মিলিসেকেন্ডে রিটার্ন করবে

ব্যাখ্যা: _.now() ফাংশনটি বর্তমান সময় (Unix টাইমস্ট্যাম্প) মিলিসেকেন্ডে রিটার্ন করে, যা অন্যান্য সময় বা ডেটা অপারেশনগুলির জন্য ব্যবহার করা যেতে পারে।


২. _.debounce() - ফাংশন কল সীমিত করা

_.debounce() ফাংশনটি একটি নির্দিষ্ট ফাংশনকে debounce করে, অর্থাৎ, এটি একাধিকবার ফাংশন কল হওয়ার পরিবর্তে একটি নির্দিষ্ট সময় পর পর একবারই কল করবে। এটি সাধারণত ইউজার ইন্টারঅ্যাকশন যেমন টাইপিং বা স্ক্রোলিংয়ের জন্য ব্যবহৃত হয়, যাতে লোড কমানো যায় এবং কার্যকারিতা বাড়ানো যায়।

সিনট্যাক্স:

_.debounce(func, wait, [options]);
  • func: যে ফাংশনটি আপনি debounce করতে চান।
  • wait: ফাংশন কল করার মাঝে যে সময় বিরতি থাকতে হবে (মিলিসেকেন্ডে)।
  • [options]: Optional, এমন কিছু বিকল্প যা আপনাকে আরও কাস্টমাইজেশন করতে দেয়।

উদাহরণ:

const _ = require('lodash');

let count = 0;

const increment = _.debounce(() => {
  count++;
  console.log(count);
}, 1000);

// একাধিক বার কল করা হলেও, শুধু একবার কল হবে
increment();
increment();
increment();

ব্যাখ্যা: এখানে, _.debounce() ফাংশনটি increment() ফাংশনকে একাধিকবার কল হওয়ার পরিবর্তে প্রতি ১ সেকেন্ডে একবার কল করবে, এর ফলে প্রয়োজনীয় সময় ব্যতীত অতিরিক্ত কল হয় না।


৩. _.throttle() - ফাংশন কল সীমিত করা নির্দিষ্ট সময়ের মধ্যে

_.throttle() ফাংশনটি নির্দিষ্ট সময় পর পর ফাংশনটিকে একবার করে কল করতে ব্যবহৃত হয়। এটি _.debounce() এর মতো, তবে এটি নির্দিষ্ট সময়ের মধ্যে একাধিকবার ফাংশন কল করার সুযোগ দেয়।

সিনট্যাক্স:

_.throttle(func, wait, [options]);
  • func: যে ফাংশনটি আপনি throttle করতে চান।
  • wait: ফাংশনটি কতটুকু সময়ের মধ্যে একবার কল হবে (মিলিসেকেন্ডে)।
  • [options]: Optional, অতিরিক্ত কাস্টমাইজেশন অপশন।

উদাহরণ:

const _ = require('lodash');

let count = 0;

const increment = _.throttle(() => {
  count++;
  console.log(count);
}, 1000);

// এখানে প্রতিবারেই increment কল হবে কিন্তু এক সেকেন্ডে একবার
increment();
increment();
increment();

ব্যাখ্যা: এখানে, _.throttle() ফাংশনটি increment() ফাংশনকে ১ সেকেন্ডে একবার করে কল করবে, যতবারই ফাংশনটি কল করা হোক না কেন।


৪. _.delay() - একটি ফাংশন নির্দিষ্ট সময় পর কল করা

_.delay() ফাংশনটি একটি নির্দিষ্ট সময় পর ফাংশনটি কল করতে ব্যবহৃত হয়। এটি সময় নির্ধারণ করে যে, কতটুকু সময় পরে ফাংশনটি কল হবে।

সিনট্যাক্স:

_.delay(func, wait, [args]);
  • func: ফাংশনটি যা আপনি নির্দিষ্ট সময় পর কল করতে চান।
  • wait: সময় (মিলিসেকেন্ডে) যা পরবর্তী কলের জন্য অপেক্ষা করবে।
  • [args]: Optional, ফাংশনের জন্য প্যারামিটার।

উদাহরণ:

const _ = require('lodash');

const greet = () => {
  console.log('Hello after 2 seconds!');
};

// 2 সেকেন্ড পরে ফাংশনটি কল হবে
_.delay(greet, 2000);

ব্যাখ্যা: এখানে _.delay() ফাংশনটি greet() ফাংশনটিকে ২ সেকেন্ড পর কল করবে।


উপসংহার

Lodash লাইব্রেরির _.now(), _.debounce(), _.throttle(), এবং _.delay() ফাংশনগুলো ডেট এবং সময় ম্যানেজমেন্টে অত্যন্ত কার্যকর। এগুলি:

  • _.now(): বর্তমান সময় মাপার জন্য ব্যবহার করা হয়।
  • _.debounce(): একাধিক ফাংশন কল সীমিত করার জন্য ব্যবহৃত হয়।
  • _.throttle(): নির্দিষ্ট সময়ের মধ্যে ফাংশন কল সীমিত করার জন্য ব্যবহৃত হয়।
  • _.delay(): একটি ফাংশনকে নির্দিষ্ট সময় পর কল করতে ব্যবহৃত হয়।

এই ফাংশনগুলো ডেট এবং সময় সম্পর্কিত কাজগুলো সহজ এবং কার্যকরী করে তোলে, এবং বিশেষত ইউজার ইন্টারঅ্যাকশন অথবা টাইম-বেসড কাজগুলো অপটিমাইজ করতে সাহায্য করে।

Content added By
Promotion

Are you sure to start over?

Loading...