Array এবং Object Methods

জাভাস্ক্রিপ্ট ইএস৬ (ES6) - Web Development

286

ES6 (ECMAScript 2015) এ Array এবং Object এর জন্য অনেক নতুন মেথড যোগ করা হয়েছে, যা কোডের কার্যকারিতা বাড়ানোর পাশাপাশি কোডিং সহজ এবং পরিষ্কার করতে সাহায্য করে। এই নতুন মেথডগুলোর মাধ্যমে অ্যারে ও অবজেক্টের উপর কার্যকরী অপারেশন যেমন ফিল্টারিং, ম্যাপিং, রিডিউসিং, এবং প্রপার্টি ম্যানিপুলেশন আরও সহজ হয়ে উঠেছে।


1. Array Methods

ES6 এ অ্যারে সম্পর্কিত বেশ কিছু নতুন মেথড যুক্ত করা হয়েছে যা কোডকে আরও সিম্পল এবং ইফিসিয়েন্ট করে তোলে।

forEach()

এটি অ্যারে এর প্রতিটি উপাদানের উপর একটি ফাংশন প্রয়োগ করে। তবে, এটি কোনো মান রিটার্ন করে না।

const numbers = [1, 2, 3];
numbers.forEach(num => console.log(num));  // 1 2 3

map()

map() মেথডটি একটি নতুন অ্যারে তৈরি করে যেখানে আসল অ্যারের প্রতিটি উপাদান উপর একটি ফাংশন প্রয়োগ করা হয়।

const numbers = [1, 2, 3];
const squares = numbers.map(num => num * num);
console.log(squares);  // [1, 4, 9]

filter()

filter() মেথডটি একটি নতুন অ্যারে রিটার্ন করে, যেটিতে শুধুমাত্র সেই উপাদান থাকে যা নির্দিষ্ট শর্ত পূরণ করে।

const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers);  // [2, 4]

reduce()

reduce() মেথডটি একটি একক মান রিটার্ন করে যা অ্যারে এর সকল উপাদানকে একত্রিত করে নির্দিষ্ট কার্যক্রমের মাধ্যমে।

const numbers = [1, 2, 3, 4];
const sum = numbers.reduce((acc, curr) => acc + curr, 0);
console.log(sum);  // 10

find()

find() মেথডটি প্রথম উপাদানটি রিটার্ন করে যা নির্দিষ্ট শর্ত পূরণ করে।

const numbers = [1, 2, 3, 4];
const firstEven = numbers.find(num => num % 2 === 0);
console.log(firstEven);  // 2

some()

some() মেথডটি চেক করে যে, অ্যারে তে কমপক্ষে একটি উপাদান শর্তটি পূরণ করে কিনা।

const numbers = [1, 2, 3, 4];
const hasEven = numbers.some(num => num % 2 === 0);
console.log(hasEven);  // true

every()

every() মেথডটি চেক করে যে, অ্যারে তে প্রতিটি উপাদান শর্তটি পূরণ করে কিনা।

const numbers = [2, 4, 6];
const allEven = numbers.every(num => num % 2 === 0);
console.log(allEven);  // true

includes()

includes() মেথডটি চেক করে যে অ্যারেটিতে একটি নির্দিষ্ট উপাদান রয়েছে কিনা।

const numbers = [1, 2, 3, 4];
console.log(numbers.includes(3));  // true
console.log(numbers.includes(5));  // false

2. Object Methods

ES6 এ Object এর জন্যও বেশ কিছু নতুন মেথড যুক্ত করা হয়েছে যা অবজেক্ট ম্যানিপুলেশনকে আরও সহজ করে তোলে।

Object.assign()

Object.assign() মেথডটি একটি অবজেক্ট থেকে অন্য অবজেক্টে প্রপার্টি কপি করতে ব্যবহৃত হয়।

const obj1 = { a: 1, b: 2 };
const obj2 = { b: 3, c: 4 };
const mergedObj = Object.assign({}, obj1, obj2);
console.log(mergedObj);  // { a: 1, b: 3, c: 4 }

Object.keys()

Object.keys() মেথডটি একটি অবজেক্টের সমস্ত প্রপার্টি নামকে একটি অ্যারে হিসেবে রিটার্ন করে।

const person = { name: 'Alice', age: 25 };
const keys = Object.keys(person);
console.log(keys);  // ['name', 'age']

Object.values()

Object.values() মেথডটি একটি অবজেক্টের সমস্ত প্রপার্টি ভ্যালু কে একটি অ্যারে হিসেবে রিটার্ন করে।

const person = { name: 'Alice', age: 25 };
const values = Object.values(person);
console.log(values);  // ['Alice', 25]

Object.entries()

Object.entries() মেথডটি একটি অবজেক্টের প্রপার্টি নাম ও ভ্যালু কে একটি অ্যারে হিসেবে রিটার্ন করে, যেখানে প্রতিটি উপাদান একটি [key, value] পেয়ার।

const person = { name: 'Alice', age: 25 };
const entries = Object.entries(person);
console.log(entries);  // [['name', 'Alice'], ['age', 25]]

Object.freeze()

Object.freeze() মেথডটি একটি অবজেক্টকে "immutable" (অপরিবর্তনীয়) করে তোলে, অর্থাৎ তার প্রপার্টি পরিবর্তন করা যায় না।

const person = { name: 'Alice', age: 25 };
Object.freeze(person);
person.age = 30;  // This won't change the 'age' property
console.log(person.age);  // 25

Object.seal()

Object.seal() মেথডটি একটি অবজেক্টে নতুন প্রপার্টি যোগ করা বন্ধ করে দেয় এবং বিদ্যমান প্রপার্টিগুলোর মান পরিবর্তন সম্ভব হলেও, নতুন প্রপার্টি যোগ করা সম্ভব হয় না।

const person = { name: 'Alice' };
Object.seal(person);
person.age = 30;  // Won't add new 'age' property
person.name = 'Bob';  // Will modify existing 'name' property
console.log(person);  // { name: 'Bob' }

3. Object Spread Syntax

ES6 এ Spread syntax (...) যোগ করা হয়েছে, যা অবজেক্টের প্রপার্টি একে অপরের মধ্যে কপি করতে সহায়ক। এটি Object.assign() এর মতো কাজ করে কিন্তু আরো সহজ এবং পরিষ্কার।

const person = { name: 'Alice', age: 25 };
const newPerson = { ...person, age: 30 };
console.log(newPerson);  // { name: 'Alice', age: 30 }

এখানে, spread syntax ব্যবহার করে person অবজেক্টের প্রপার্টি নতুন অবজেক্টে কপি করা হয়েছে এবং তার age প্রপার্টি আপডেট করা হয়েছে।


সারাংশ

ES6 এ Array এবং Object এর জন্য নতুন মেথড যোগ করা হয়েছে, যা ডেটা ম্যানিপুলেশনকে আরো সহজ, পরিষ্কার এবং কার্যকরী করে তোলে। এগুলোর মধ্যে map(), filter(), reduce(), Object.assign(), Object.keys(), Object.values() ইত্যাদি মেথড প্রধান ভূমিকা পালন করে। এগুলি কোডিংয়ের কার্যকারিতা বাড়ানোর পাশাপাশি ডেটা ট্রান্সফরমেশন ও ম্যানিপুলেশনকে সহজ করে তোলে।

Content added By

ES6 এ কিছু নতুন অ্যারে মেথড যোগ করা হয়েছে, যা অ্যারের উপাদানগুলো নিয়ে কাজ করার প্রক্রিয়া সহজ ও কার্যকরী করে তোলে। এই নতুন মেথডগুলোর মধ্যে find(), findIndex(), এবং includes() অন্যতম। এই মেথডগুলো অ্যারে প্রক্রিয়াকরণে আরও দক্ষতা এবং স্বচ্ছতা আনে।


1. find() মেথড

find() মেথড একটি অ্যারে থেকে প্রথম উপাদানটি ফেরত দেয় যা প্রদত্ত শর্ত পূর্ণ করে। এটি একটি ফাংশন গ্রহণ করে, যা প্রতিটি উপাদানের জন্য পরীক্ষা করে এবং প্রথম মিলে যাওয়া উপাদানটি রিটার্ন করে। যদি কোনো উপাদান না পাওয়া যায়, তাহলে undefined রিটার্ন করা হয়।

উদাহরণ:

const numbers = [5, 12, 8, 130, 44];

const found = numbers.find(element => element > 10);

console.log(found);  // 12

এখানে, find() মেথড প্রথম উপাদানটি খুঁজে পেয়েছে যা 10 এর বেশি (১২), এবং সেটি রিটার্ন করেছে।


2. findIndex() মেথড

findIndex() মেথডটি find() এর মতোই কাজ করে, তবে এটি মিল পাওয়া উপাদানটির ইনডেক্স (অথবা অবস্থান) রিটার্ন করে। যদি কোনো উপাদান শর্ত পূর্ণ না করে, তাহলে এটি -1 রিটার্ন করে।

উদাহরণ:

const numbers = [5, 12, 8, 130, 44];

const index = numbers.findIndex(element => element > 10);

console.log(index);  // 1

এখানে, findIndex() মেথড ১২ উপাদানের ইনডেক্স (১) রিটার্ন করেছে কারণ এটি প্রথম উপাদান যা ১০ এর বেশি।


3. includes() মেথড

includes() মেথডটি একটি অ্যারে তে নির্দিষ্ট মানটি আছে কিনা তা চেক করে এবং একটি বুলিয়ান (true বা false) রিটার্ন করে। এটি সাধারণত কোনো মান অ্যারের মধ্যে আছে কিনা তা যাচাই করার জন্য ব্যবহৃত হয়।

উদাহরণ:

const fruits = ['apple', 'banana', 'mango', 'orange'];

console.log(fruits.includes('banana'));  // true
console.log(fruits.includes('grapes'));  // false

এখানে, includes() চেক করেছে যে 'banana' এবং 'grapes' অ্যারে তে আছে কিনা, এবং যথাক্রমে true এবং false রিটার্ন করেছে।


find(), findIndex(), এবং includes() মেথডগুলো ES6-এ নতুন অ্যারে মেথড হিসেবে পরিচিত এবং এগুলোর মাধ্যমে অ্যারের উপাদানগুলো খুব সহজে খোঁজা, চেক করা এবং তাদের ইনডেক্স পাওয়া সম্ভব। এগুলো কোডিংকে আরও সহজ, পরিষ্কার এবং কার্যকরী করে তোলে।

Content added By

ES6-এ নতুন কিছু Object Methods যোগ করা হয়েছে, যা অবজেক্টের সাথে কাজ করতে আরও সহজ এবং শক্তিশালী পদ্ধতি প্রদান করে। এই মেথডগুলো হল:

  • Object.assign()
  • Object.keys()
  • Object.values()

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


Object.assign()

Object.assign() মেথডটি একটি বা একাধিক সোর্স অবজেক্টের সমস্ত প্রপার্টি গন্তব্য অবজেক্টে কপি করে। এটি মূলত অবজেক্টকে কপি বা মার্জ (merge) করার জন্য ব্যবহৃত হয়। এই মেথডটি শ্যালো কপি (shallow copy) তৈরি করে, অর্থাৎ কপি করা প্রপার্টি যদি অন্য অবজেক্টের রেফারেন্স হয়, তবে সেটা শুধু রেফারেন্স কপি করবে, মান কপি করবে না।

সিনট্যাক্স:

Object.assign(target, ...sources);
  • target: গন্তব্য অবজেক্ট, যেখানে সোর্স অবজেক্টের প্রপার্টি কপি হবে।
  • sources: এক বা একাধিক সোর্স অবজেক্ট যা কপি করা হবে।

উদাহরণ:

const person = { name: "John", age: 30 };
const job = { title: "Developer", company: "ABC Corp" };

// person অবজেক্টে job অবজেক্টের প্রপার্টি কপি
Object.assign(person, job);

console.log(person);  
// Output: { name: "John", age: 30, title: "Developer", company: "ABC Corp" }

এখানে, Object.assign() ব্যবহার করে job অবজেক্টের সমস্ত প্রপার্টি person অবজেক্টে কপি করা হয়েছে।


Object.keys()

Object.keys() মেথডটি একটি অবজেক্টের সমস্ত প্রপার্টির কী (key) গুলির একটি অ্যারে রিটার্ন করে। এটি কেবল enumerable কীগুলোকেই রিটার্ন করে (অর্থাৎ, যেগুলি লুপের মাধ্যমে অ্যাক্সেস করা যায়)।

সিনট্যাক্স:

Object.keys(obj);
  • obj: অবজেক্টটি, যেটির কীগুলি আপনি জানতে চান।

উদাহরণ:

const person = { name: "John", age: 30, gender: "male" };

const keys = Object.keys(person);

console.log(keys);  // Output: ["name", "age", "gender"]

এখানে, Object.keys() মেথডটি person অবজেক্টের কীগুলির একটি অ্যারে রিটার্ন করেছে।


Object.values()

Object.values() মেথডটি একটি অবজেক্টের সমস্ত প্রপার্টির মান (value) গুলির একটি অ্যারে রিটার্ন করে। এটি enumerable ভ্যালুগুলোকেই রিটার্ন করে।

সিনট্যাক্স:

Object.values(obj);
  • obj: অবজেক্টটি, যেটির মানগুলি আপনি জানতে চান।

উদাহরণ:

const person = { name: "John", age: 30, gender: "male" };

const values = Object.values(person);

console.log(values);  // Output: ["John", 30, "male"]

এখানে, Object.values() মেথডটি person অবজেক্টের মানগুলির একটি অ্যারে রিটার্ন করেছে।


Object.entries()

যদিও Object.entries() ES6 এর পরে আরও একটি নতুন মেথড হিসেবে এসেছে, এটি আপনাকে অবজেক্টের key-value pair গুলির একটি অ্যারে রিটার্ন করে। এটি Object.keys() এবং Object.values() এর সমন্বয় হতে পারে।

সিনট্যাক্স:

Object.entries(obj);

উদাহরণ:

const person = { name: "John", age: 30, gender: "male" };

const entries = Object.entries(person);

console.log(entries);  // Output: [["name", "John"], ["age", 30], ["gender", "male"]]

এখানে Object.entries() অবজেক্টের কীগুলির সাথে মানগুলোকেও অ্যারের আকারে রিটার্ন করছে।


ES6-এ Object.assign(), Object.keys(), Object.values() এবং Object.entries() মেথডগুলো অবজেক্টের সাথে কাজ করার পদ্ধতিকে অনেক সহজ এবং প্রভাবশালী করেছে। এগুলি ব্যবহার করে আপনি অবজেক্টের প্রপার্টি কপি করতে, কীগুলি বা মানগুলি পেতে এবং অবজেক্টের key-value পেয়ার দেখতে পারবেন। এই মেথডগুলোর মাধ্যমে কোডের গঠন আরও পরিষ্কার এবং কার্যকরী হয়।

Content added By

ES6 (ECMAScript 2015) এ নতুন কিছু array iteration methods (যেমন map(), filter(), এবং reduce()) পরিচিত হয়েছে, যা array গুলোর উপর কাজ করার প্রক্রিয়াকে আরও সহজ এবং শক্তিশালী করেছে। এগুলো functional programming ধারণার সাথে কাজ করে এবং array ডেটা স্ট্রাকচারের উপাদানগুলোকে সহজভাবে প্রক্রিয়াকরণ করতে সাহায্য করে।


1. map() Method

map() method একটি নতুন array তৈরি করে, যেখানে প্রতিটি উপাদান একটি নির্দিষ্ট function দিয়ে প্রক্রিয়াকৃত হয়। এটি মূল array পরিবর্তন করে না, বরং একটি নতুন array রিটার্ন করে।

ব্যবহার:

const numbers = [1, 2, 3, 4, 5];

// প্রতিটি উপাদানকে দ্বিগুণ করতে map() ব্যবহার
const doubledNumbers = numbers.map(number => number * 2);

console.log(doubledNumbers); // [2, 4, 6, 8, 10]

map() method একটি callback function গ্রহণ করে, যেখানে:

  • currentValue: array এর বর্তমান উপাদান।
  • index (optional): বর্তমান উপাদানের ইনডেক্স।
  • array (optional): মূল array।

অধিক উদাহরণ:

const users = [
  { name: 'John', age: 25 },
  { name: 'Jane', age: 30 },
  { name: 'Mark', age: 35 }
];

// `map()` ব্যবহার করে users array থেকে শুধুমাত্র নামের array তৈরি করা
const names = users.map(user => user.name);

console.log(names); // ["John", "Jane", "Mark"]

2. filter() Method

filter() method array এর উপাদানগুলোকে ফিল্টার করে একটি নতুন array রিটার্ন করে, যেখানে শুধুমাত্র সেই উপাদানগুলো থাকবে, যেগুলো একটি নির্দিষ্ট শর্ত পূর্ণ করে। এটি মূল array পরিবর্তন করে না।

ব্যবহার:

const numbers = [1, 2, 3, 4, 5];

// filter() ব্যবহার করে সুধুমাত্র বিজোড় সংখ্যাগুলি বের করা
const oddNumbers = numbers.filter(number => number % 2 !== 0);

console.log(oddNumbers); // [1, 3, 5]

filter() method একটি callback function গ্রহণ করে, যেখানে:

  • currentValue: array এর বর্তমান উপাদান।
  • index (optional): বর্তমান উপাদানের ইনডেক্স।
  • array (optional): মূল array।

অধিক উদাহরণ:

const users = [
  { name: 'John', age: 25 },
  { name: 'Jane', age: 30 },
  { name: 'Mark', age: 35 },
  { name: 'Lucy', age: 40 }
];

// filter() ব্যবহার করে বয়স 30 এর বেশি এমন users ফিল্টার করা
const olderUsers = users.filter(user => user.age > 30);

console.log(olderUsers);
// [ { name: 'Mark', age: 35 }, { name: 'Lucy', age: 40 } ]

3. reduce() Method

reduce() method array এর উপাদানগুলোকে একটি একক মানে রিডিউস (সংকলন) করতে ব্যবহৃত হয়। এটি মূল array এর সমস্ত উপাদানকে একটি accumulator (যে মানটি আমরা তৈরি করছি) দিয়ে প্রক্রিয়াকরণ করে এবং একটি একক মান রিটার্ন করে।

ব্যবহার:

const numbers = [1, 2, 3, 4, 5];

// reduce() ব্যবহার করে array এর সব সংখ্যা যোগফল বের করা
const sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);

console.log(sum); // 15

reduce() method দুটি প্রাথমিক আর্গুমেন্ট গ্রহণ করে:

  • callback: প্রতিটি উপাদান প্রক্রিয়া করার function, যেটি দুটি প্যারামিটার নেয়:
    • accumulator: আগের iteration থেকে আগত মান (প্রথম iteration এ এটি initial value হবে)।
    • currentValue: বর্তমান iteration এ array এর উপাদান।
  • initialValue (optional): accumulator এর প্রাথমিক মান। যদি প্রদান না করা হয়, তবে প্রথম iteration এ প্রথম array উপাদানটি accumulator হিসেবে ব্যবহৃত হবে।

অধিক উদাহরণ:

const numbers = [1, 2, 3, 4, 5];

// reduce() ব্যবহার করে সব সংখ্যা গুনফল বের করা
const product = numbers.reduce((accumulator, currentValue) => accumulator * currentValue, 1);

console.log(product); // 120

এখানে, 1 প্রাথমিক মান দেওয়া হয়েছে, যাতে accumulator এর গুনফল প্রথম থেকে শুরু হয়।


মোটামুটি তুলনা:

  • map(): array এর প্রতিটি উপাদানকে পরিবর্তন করে এবং একটি নতুন array রিটার্ন করে।
  • filter(): array এর উপাদানগুলোকে ফিল্টার করে একটি নতুন array রিটার্ন করে, যেখানে শুধুমাত্র শর্ত পূর্ণ করা উপাদানগুলো থাকবে।
  • reduce(): array এর সব উপাদানকে একটি একক মানে রিডিউস (সংকলন) করে, যেমন যোগফল, গুনফল, বা কোনো জটিল গণনা।

map(), filter(), এবং reduce() ES6 এর powerful array iteration methods যা আপনার কোডকে আরও পরিষ্কার, সংক্ষিপ্ত এবং কার্যকরী করতে সাহায্য করে। এগুলোর মাধ্যমে আপনি array manipulation কে declarative এবং functional programming স্টাইলে করতে পারেন, যা কোডের maintainability এবং readability উন্নত করে।

Content added By

ES6 (ECMAScript 2015) তে Object সম্পর্কিত নতুন অনেক বৈশিষ্ট্য যোগ করা হয়েছে, যার মধ্যে Dynamic Properties এবং Methods অন্যতম। এগুলি আপনাকে অবজেক্টের প্রোপার্টি এবং মেথডগুলোকে কোডের মধ্যে runtime এ ডাইনামিকভাবে তৈরি এবং আপডেট করার সুযোগ দেয়।


Dynamic Object Properties

ডাইনামিক প্রোপার্টি তৈরি করার মাধ্যমে আপনি অবজেক্টের প্রোপার্টি অ্যাক্সেস করতে এবং নতুন প্রোপার্টি অ্যাসাইন করতে পারবেন রানটাইমে, অর্থাৎ যখন কোডটি এক্সিকিউট হচ্ছে।

ডাইনামিক প্রোপার্টি সিঙ্কট্যাক্স

ES6 এ, আপনি অবজেক্ট লিটারাল ব্যবহার করে ডাইনামিক প্রোপার্টি তৈরি করতে পারেন এবং এর জন্য ব্র্যাকেট নোটেশন ব্যবহার করা হয়। উদাহরণস্বরূপ:

let propName = 'age';

const person = {
  name: 'John',
  [propName]: 30  // dynamic property using variable
};

console.log(person.age);  // 30

এখানে, propName ভ্যারিয়েবলটি 'age' মান ধারণ করে এবং এটি অবজেক্ট person এর একটি ডাইনামিক প্রোপার্টি হিসেবে ব্যবহৃত হচ্ছে।

Multiple Dynamic Properties

আপনি একাধিক ডাইনামিক প্রোপার্টি একসাথে নির্ধারণ করতে পারেন:

let prop1 = 'name';
let prop2 = 'age';

const person = {
  [prop1]: 'Alice',
  [prop2]: 25
};

console.log(person.name);  // Alice
console.log(person.age);   // 25

এখানে, দুটি ভ্যারিয়েবল prop1 এবং prop2 ডাইনামিকভাবে person অবজেক্টের প্রোপার্টি হিসেবে ব্যবহৃত হয়েছে।


Dynamic Methods in Objects

ES6 এ অবজেক্ট মেথড তৈরির পদ্ধতিতে নতুন সুবিধা এসেছে। এখন আপনি অবজেক্টের মেথডগুলোকে আরও সহজে এবং ডাইনামিকভাবে ডিফাইন করতে পারেন।

Object Method Short Syntax

ES6 এ অবজেক্ট মেথড ডিফাইন করার জন্য একটি সংক্ষিপ্ত সিনট্যাক্স এসেছে। আপনি এখন সহজেই মেথড ঘোষণা করতে পারেন, যেখানে মেথডের নাম এবং বডি একসাথে থাকে।

const person = {
  name: 'John',
  greet() {   // shorthand method syntax
    console.log(`Hello, my name is ${this.name}`);
  }
};

person.greet();  // "Hello, my name is John"

এখানে, greet() মেথডটি person অবজেক্টের মেথড হিসেবে সংক্ষেপে ডিফাইন করা হয়েছে।

Dynamic Methods Using Computed Property Names

আপনি ডাইনামিকভাবে মেথড নাম নির্ধারণ করার জন্য [key] নোটেশন ব্যবহার করতে পারেন, যেমন ডাইনামিক প্রোপার্টির ক্ষেত্রে। এটি আপনি তখন ব্যবহার করবেন যখন মেথডের নাম runtime এ নির্ধারণ করতে চান।

let methodName = 'sayGoodbye';

const person = {
  name: 'Alice',
  [methodName]() {  // Dynamic method name
    console.log(`${this.name} says goodbye!`);
  }
};

person.sayGoodbye();  // "Alice says goodbye!"

এখানে, methodName ভ্যারিয়েবলটি 'sayGoodbye' নামের মেথডটি ডাইনামিকভাবে তৈরি করছে এবং person অবজেক্টে সেই মেথডটি অ্যাক্সেস করা হয়েছে।


Using Computed Property Names for Dynamic Methods

ES6 এ computed property names এর সাহায্যে আপনি ডাইনামিকভাবে প্রোপার্টি এবং মেথড নাম উভয়ই নির্ধারণ করতে পারেন। উদাহরণস্বরূপ, আপনি একটি অবজেক্টে ডাইনামিক মেথড তৈরি করতে পারেন, যার নাম runtime এ নির্ধারিত হবে।

let dynamicMethodName = 'logMessage';

const logger = {
  [dynamicMethodName](message) {   // Dynamic method name
    console.log(`Message: ${message}`);
  }
};

logger.logMessage('Hello, World!');  // "Message: Hello, World!"

এখানে, dynamicMethodName ভ্যারিয়েবলটি logMessage নামের মেথড তৈরি করছে। এই মেথডটি পরবর্তীতে অবজেক্ট logger এর অংশ হিসেবে ব্যবহৃত হচ্ছে।


ES6 তে Dynamic Object Properties এবং Dynamic Methods ব্যবহারের মাধ্যমে আপনি অবজেক্টের প্রোপার্টি ও মেথডগুলোকে runtime এ নির্ধারণ করতে পারেন, যা কোডকে আরও flexible এবং শক্তিশালী করে তোলে। এগুলি বিভিন্ন পরিস্থিতিতে কোডকে আরও শক্তিশালী এবং পুনঃব্যবহারযোগ্য করতে সাহায্য করে, বিশেষত যখন আপনার অবজেক্টের প্রোপার্টি বা মেথডের নাম পূর্বানুমানযোগ্য না হয়।

Content added By
Promotion

Are you sure to start over?

Loading...