Lodash লাইব্রেরি JavaScript এর objects এর সাথে কাজ করার জন্য অনেক শক্তিশালী utility functions সরবরাহ করে। এগুলোর মাধ্যমে আপনি objects এর properties সহজেই পরিচালনা করতে পারেন, যেমন একটি property খুঁজে বের করা, property এর মান পরিবর্তন করা, object এর মধ্যে নতুন property যোগ করা, এবং আরও অনেক কিছু। নিচে Lodash দিয়ে objects এর মধ্যে property manipulation এর কিছু জনপ্রিয় ফাংশন আলোচনা করা হলো।
১. _.get() ফাংশন
_.get() ফাংশনটি একটি object থেকে নির্দিষ্ট property এর মান বের করতে ব্যবহৃত হয়। এটি যদি property পাওয়া না যায়, তবে আপনি একটি default value দিতে পারেন যা রিটার্ন হবে।
Syntax:
_.get(object, path, [defaultValue]);
- object: Object যেটি থেকে property মান বের করতে হবে।
- path: property এর path, এটি একটি string বা array হতে পারে।
- defaultValue: (Optional) যদি property পাওয়া না যায়, তাহলে এটি রিটার্ন হবে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John', 'address': { 'city': 'New York' } };
// city property এর মান পাওয়া
let city = _.get(user, 'address.city');
console.log(city); // "New York"
// যদি address.property পাওয়া না যায়, তবে default value দিবে
let country = _.get(user, 'address.country', 'USA');
console.log(country); // "USA"
২. _.set() ফাংশন
_.set() ফাংশনটি একটি object এর মধ্যে নির্দিষ্ট path এ property যোগ বা পরিবর্তন করতে ব্যবহৃত হয়।
Syntax:
_.set(object, path, value);
- object: Object যেটিতে property যোগ বা পরিবর্তন করতে হবে।
- path: property এর path, এটি একটি string বা array হতে পারে।
- value: নতুন মান যা property এ সেট করতে হবে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John' };
// address.city property যোগ করা
_.set(user, 'address.city', 'Los Angeles');
console.log(user); // { name: 'John', address: { city: 'Los Angeles' } }
// address.country property পরিবর্তন করা
_.set(user, 'address.country', 'USA');
console.log(user); // { name: 'John', address: { city: 'Los Angeles', country: 'USA' } }
এখানে _.set() ফাংশনটি object এর মধ্যে নতুন properties যোগ করেছে বা পূর্বের properties এর মান পরিবর্তন করেছে।
৩. _.has() ফাংশন
_.has() ফাংশনটি একটি object এ নির্দিষ্ট property আছে কিনা তা চেক করে।
Syntax:
_.has(object, path);
- object: Object যেটিতে property চেক করতে হবে।
- path: property এর path, এটি একটি string বা array হতে পারে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John', 'address': { 'city': 'New York' } };
// address.city property আছে কিনা চেক করা
let hasCity = _.has(user, 'address.city');
console.log(hasCity); // true
// address.country property আছে কিনা চেক করা
let hasCountry = _.has(user, 'address.country');
console.log(hasCountry); // false
এখানে _.has() ফাংশনটি চেক করেছে যে address.city এবং address.country properties গুলো আছে কিনা।
৪. _.omit() ফাংশন
_.omit() ফাংশনটি একটি object থেকে নির্দিষ্ট properties বাদ দিতে ব্যবহৃত হয়। এটি নতুন একটি object রিটার্ন করে যা মূল object থেকে নির্দিষ্ট properties বাদ দেওয়া থাকে।
Syntax:
_.omit(object, [paths]);
- object: Object যেটি থেকে properties বাদ দিতে হবে।
- paths: properties এর নাম বা path যেগুলি বাদ দিতে হবে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John', 'age': 30, 'address': { 'city': 'New York' } };
// 'age' property বাদ দেওয়া
let userWithoutAge = _.omit(user, ['age']);
console.log(userWithoutAge); // { name: 'John', address: { city: 'New York' } }
এখানে _.omit() ফাংশনটি age property বাদ দিয়েছে এবং একটি নতুন object রিটার্ন করেছে।
৫. _.pick() ফাংশন
_.pick() ফাংশনটি একটি object থেকে শুধুমাত্র নির্দিষ্ট properties নির্বাচন করতে ব্যবহৃত হয়। এটি একটি নতুন object রিটার্ন করে যা শুধু নির্বাচন করা properties ধারণ করে।
Syntax:
_.pick(object, [paths]);
- object: Object যেটি থেকে properties নির্বাচন করতে হবে।
- paths: properties এর নাম বা path যেগুলি নির্বাচন করতে হবে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John', 'age': 30, 'address': { 'city': 'New York' } };
// শুধুমাত্র 'name' এবং 'address' properties নির্বাচন করা
let selectedUser = _.pick(user, ['name', 'address']);
console.log(selectedUser); // { name: 'John', address: { city: 'New York' } }
এখানে _.pick() ফাংশনটি শুধু name এবং address properties নির্বাচন করে একটি নতুন object রিটার্ন করেছে।
৬. _.update() ফাংশন
_.update() ফাংশনটি একটি object এর property এর মান আপডেট করতে ব্যবহৃত হয়, একটি নির্দিষ্ট path অনুসারে।
Syntax:
_.update(object, path, updater);
- object: Object যেটির property আপডেট করতে হবে।
- path: property এর path যেটি আপডেট করতে হবে।
- updater: একটি ফাংশন যা property এর মান আপডেট করবে।
উদাহরণ:
const _ = require('lodash');
let user = { 'name': 'John', 'age': 30 };
// age property আপডেট করা
_.update(user, 'age', (n) => n + 1);
console.log(user); // { name: 'John', age: 31 }
এখানে _.update() ফাংশনটি age property এর মান 1 বৃদ্ধি করেছে।
উপসংহার
Lodash এর মাধ্যমে objects এর properties নিয়ে কাজ করা অনেক সহজ এবং দক্ষ হয়ে ওঠে। _.get(), _.set(), _.has(), _.omit(), _.pick(), এবং _.update() এর মতো ফাংশনগুলো আপনার object manipulation কে আরও দ্রুত এবং কার্যকরী করে তোলে। এগুলোর মাধ্যমে আপনি সহজেই property যোগ, পরিবর্তন, বা বাদ দিতে পারবেন, এবং আপনার কোডকে আরও পরিষ্কার এবং ব্যবস্থাপনাযোগ্য করতে পারবেন।
Read more