7.2 অবজেক্ট প্রপার্টি এবং মেথড:
অবজেক্ট প্রপার্টি:
অবজেক্টের প্রত্যেকটা key:value পেয়ারগুলোকে অবজেক্ট properties বলা হয়। যেমন উপরের student অবজেক্টে name: ’Mehedi’ আর class: 12 অবজেক্টের properties।
অবজেক্টের properties গুলোকে আমরা দুইভাবে এক্সেস করতে পারি। সেগুলো হচ্ছেঃ
১। ডট নোটেশন ব্যবহার করে
ডট নোটেশন দিয়ে অবজেক্ট এক্সেস করার সিনট্যাক্স এমন হয়ঃ
objectName.key
যেমন, উপরের student অবজেক্ট কে আমরা এভাবে এক্সেস করতে পারি।
// অবজেক্টconst student = {name: ‘Mehedi’,class: 12};// ডট নোটেশন দিয়ে অবজেক্ট এক্সেস করাconsole.log(student.name) // আউটপুটঃ Mehedi
২। ব্র্যাকেট নোটেশন ব্যবহার করে
ব্র্যাকেট নোটেশন দিয়ে অবজেক্ট এক্সেস করার সিনট্যাক্স এমন হয়ঃ
objectName[“propertyName”]
যেমন, উপরের student অবজেক্ট কে আমরা এভাবে এক্সেস করতে পারিঃ
// অবজেক্টconst student = {name: ‘Mehedi’,class: 12};// ব্র্যাকেট নোটেশন দিয়ে অবজেক্ট এক্সেস করাconsole.log(student[“name”]) // আউটপুটঃ Mehedi
এখন আমরা চাইলে নেস্টেড অবজেক্ট মানে একটা অবজেক্টের মধ্যে আরও অবজেক্ট ডিফাইন করতে পারি।
// অবজেক্টconst student = {name: ‘Mehedi’,class: 12,marks: {physics: 80,biology: 55}};
অবজেক্ট মেথড :
জাভাস্ক্রিপ্টে অবজেক্টের মধ্যে ফাংশনও থাকতে পারে। যেমনঃ
const student = {name: ‘Mehedi’,class: 12,greet: function (){console.log(“Hello!”)}};
এটিও অবজেক্টের একটি প্রোপার্টি। এই ধরণের প্রোপার্টিকে মেথড বলা হয়। সোজা কোথায়, অবজেক্টের মধ্যের ফাংশনকেই মেথড বলা হয়।
আমরা নিচের মতো করে অবজেক্টের মেথড এক্সেস করতে পারিঃ
const student = {name: ‘Mehedi’,class: 12,greet: function (){console.log(“Hello!”)}};student.greet(); // আউটপুটঃ Hello!
- নিম্নোক্ত অবজেক্টটি একটি নেস্টেড অবজেক্ট। কারণ এখানে একটি অবজেক্ট employeeInfo এর ভেতর salary এবং address নামের আরো দুটি অবজেক্ট রয়েছে।
const employeeInfo = {employeeName: “John Doe”,employeeId: 27,salary: { 2018: “40000$”, 2019: “50000$”, 2020: “65000$” },address: {locality: { address1: “bronx”, address2: “Newyork”, },city: “Newyork”, country: “US”}}
- নিম্নোক্ত অবজেক্টটিও একটি নেস্টেড অবজেক্ট। কারণ এখানে একটি অবজেক্ট person এ কতগুলো অবজেক্ট এর একটি অ্যারে রয়েছে যা cars ভ্যারিয়েবল এ এসাইন করা রয়েছে। অ্যারে নিজেও একটি অবজেক্ট।
- অবজেক্ট এর প্রোপার্টি গুলো একসেস করাঃ
-
const student = {name: ‘John’,age: 20,marks: {science: 70,math: 75}}
-
const myCar = {make: ‘Ford’,model: ‘Mustang’,year: 1969,};
- অবজেক্টটি নতুন ভ্যালু দিয়ে আপডেট কর। নতুন ভ্যালু সমূহঃ make: ‘Nissan’ model: ‘300ZX’ year: 1992 owner: ‘Alex’ color: ‘Blue’.
- অবজেক্টটিতে displayCar নামে একটি মেথড যোগ কর যা Car এর সব ইনফরমেশন দেখাবে।
- উদাহরন অংশের ১ নং অবজেক্ট টিকে তোমার নিজের তথ্য দিয়ে আপডেট কর।