Module‌‌‌ ‌‌‌৩১ ‌‌‌এ‌‌‌ ‌‌‌আমরা‌‌‌ ‌‌‌যাকিছু‌‌‌ ‌‌‌শিখেছি‌‌‌

Module‌‌‌ ‌‌‌৩১ ‌‌‌এ‌‌‌ ‌‌‌আমরা‌‌‌ ‌‌‌যাকিছু‌‌‌ ‌‌‌শিখেছি‌‌‌

(Advanced) ES6 , Class , Inheritance

 

 

  • একটা Object এর মান কিভাবে একটা একটা করে আলাদা আলাদা variable এর মধ্যে স্টোর করতে পারি ? (ES6 এর মাধ্যমে করতে হবে )

 

const fish = { name: "hilsa", id: 102, location: "joypurhat", price: 1299 };

const { name, id, location, price } = fish; //বোল্ড করা লেখা এক একটা variable

console.log(name, id, location, price);

 

 

  • আমরা চাইলে কোণ একটা Object এর Property এর ভেলুও কিন্তু একটা Object হতে পারে  !

 

const company = {

  name: "grameenphone",

  ceo: { name: "rashedul", id: 01, food: "rice" },

  web: {

    work: "web development",

    employee: 22,

    framework: "react",

    tech: {

      first: "html",

      second: "css",

      third: "JS",

    },

  },

};


  • এখন আমাদের দরকার company Object এর web Property এর প্রপার্টি গুলোকে অ্যাক্সেস করতে হয় তাহলে আমরা কি করব ? 


সিম্পল রাস্তা (ভ্যানিলা JS)


const work = company.web.work

Const framework = company.web.framework

console.log(work,framework)



ES6 (destructuring) এর মাধ্যমে 



const { work, framework } = company.web;

console.log(work, framework);

const { first, second } = company.web.tech;

console.log(first);


 

  • আমরা Object Property এর নাম আর variable এর নাম সেম রাখতে পারি । 

 

const obj = { a: 10, b: 20, c: 30, d: 40, e: 50 };

const { a, e, c } = obj;

console.log(a, e, c);

 

  • এতক্ষণ আমরা Obejct নিয়ে ঘাটাঘাটি করলাম এখন Array নিয়ে করে ফেলি 

 

const [a, b] = ["rashedul", 20];

console.log(a, b);

 

  • যদি আমরা একটা property কে অ্যাক্সেস করতে চাই কিন্তু সেটা Object এর ভেতরে ডিফাইন করা নাই। তাহলে আমরা একটা ERROR খেয়ে যাব । তাকে Handle করব কিভাবে ?

 

console.log(company?.web?.third);

console.log(company?.backed?.web?.third);

 

  • আমরা যদি একটা Arr এর ভিতরের element গুলোকে এক এক নিয়ে সেগুলোকে ২ দ্বারা গুন করে আউটপুট দিতে চাই তাহলে কি করতে পারি ? (আমরা Loop চালাতে পারি । তাই না ? তো আজকে আমরা আর Loop চালাবো না আজকে map() ফাংশন এর ব্যাবহার দেখব )

 


const arr = [4, 6, 8, 10];

const output = [];

const dubbleIt = (num) => num * 2;

console.log(arr.map(dubbleIt)); 

//console.log(arr.map((num) => num * 2));

  • map() ফাংশন কি করে ? map() ফাংশন Array এর ভিতরে লুপ চালায় এবং সে একটা ফাংশন কে কল করে আর সে ফাংশন যা বলে সেটা অনুযায়ী রেজাল্ট দেয় ।

 

  • তুমি কিভাবে map() ব্যাবহার করে  একটা Array এর ভেতরের নাম ভা এলেমেন্টগুলোর Length বের করতে পার ?

 

const friends = ["rashedul", "islam", "shihab", "taki", "rumman"];

const fLength = friends.map((f) => f.length);

console.log(fLength);

 

  •  তোমাকে যদি একটা Array of Object দেওয়া হয় এবং Price ও Name গুলোকে Array এর মধ্যে ষ্টোর করতে বলা হয় তাহলে কি করবা ? 

 

const products = [

  { name: "water bottle", price: 50, color: "yellow" },

  { name: "mobile", price: 15000, color: "black" },

  { name: "smart watch", price: 3000, color: "black" },

  { name: "sticky", price: 30, color: "pink" },

  { name: "water glass", price: 3, color: "white" },

];

const ProductName = products.map((product) => product.name);

const ProductPrice = products.map((product) => product.price);

console.log(ProductName, ProductPrice);

 

  • আমরা যে ProductName , ProductPrice  গুলো নিয়ে একটা Array এর ভিতরে রাখছি । কারণ আমরা এগুলোকে নিয়ে পরে কিছু একটা করব । অর্থাৎ আমরা সেগুলোকে return করেছি ।  আর যদি আমাদের কিছু return না করার দরকার পরে তাহলে আমরা forEach ব্যাবহার করব । 

 

const ProductPrice = products.forEach((product) => console.log(product)); // forEach বেশি কাজে লাগে না । 

 

  • filter() এর কাজ কি ? (filter() এর ভিতরে আমরা শর্ত দিতে পারি যেমন If ,else if এ দিতাম) 

 

const arr = [5, 2, 654, 51456, 46, 5436, 156, 1456];

const arrFilter = arr.filter((a) => a > 500);

console.log(arrFilter);


  • তোমার কাজ হল filter() ব্যাবহার করে Array of Object এর price 300 এর চেয়ে বেশি যেগুলা সেগুলোকে দেখানো । 

 

  • find() এর কাজ কি? (find() এর কাজ ঠিক Filter() এর মতই । কিন্তু filter() Array return করত আর find() একটা এলেমেন্ট return করবে । যদি সেখানে একই নামে বেশি element থাকে তবে প্রথমটা return করবে । আর না থাকলে Undefined দেখাবে । যেখানে filter() করলে একটা শর্তের সাথে জাদেরকে মিল পাবে সব গুলোকে return করত । আর কিছুই না পাইলে একটা ফাঁকা Array return করত । )

 

const whiteItem = products.find((product) => product.color == "white");

console.log(whiteItem);

 

  •  Class কিভাবে ব্যাবহার করতে হয় ? এবং কিভাবে একটা dynamic রেজাল্ট return করাতে হয় ? (Note: class Name এর প্রথম word বড় হাতের দিতে হয় )

 

class Support {

  name; role; address; time;

  constructor(name, role, address, time) {

    this.name = name; this.role = role; this.address = address;this.time = time;

  }

  startSession() {

    console.log(

      this.name,"he is a",this.role,"started a session at",this.time);}

}

const rashedul = new Support("rashedul", "web developer", "joypurhat", "10:50");

rashedul.startSession();

 

  • আমরা support এর জন্য একটা ক্লাস (class)তৈরি করে ফেললাম । কিন্তু কাল যদি আরো ৪,৫,১০ তা class তৈরি করতে হয় তাহলে কি বার বার code duplicate করবে ? অবশ্যয় না । এর জন্য তুমি একটা common class তৈরি করে নিবে । 

 


 

  •  

 

 

All module link

আর আমার github এ যাইতে চাইলে এই লিঙ্কে ক্লিক করুন 

About 

Md: Rashedul Islam Shihab

Writer of this note

Batch4

Social accounts



 


 


 


أحدث أقدم