آموزش مفاهیم پایه‌ای اشیاء در جاوا اسکریپت: تعریف، ویژگی‌ها و متدها

دسته : آموزش رایگان جاوا اسکریپت (JavaScript)

آموزش مفاهیم پایه‌ای اشیاء در جاوا اسکریپت: تعریف، ویژگی‌ها و متدها

آموزش مفاهیم پایه‌ای اشیاء در جاوا اسکریپت: تعریف، ویژگی‌ها و متدها

اشیاء (Objects) یکی از مفاهیم اساسی در جاوا اسکریپت هستند که به شما اجازه می‌دهند داده‌های پیچیده‌تری را نسبت به انواع داده‌های ساده مانند اعداد و رشته‌ها ذخیره و مدیریت کنید. اشیاء به عنوان یک ساختار داده‌ای کلیدی در جاوا اسکریپت، پایه و اساس برنامه‌نویسی شیءگرا (Object-Oriented Programming) را فراهم می‌کنند. در این مقاله، به بررسی مفاهیم پایه‌ای اشیاء، نحوه‌ی ایجاد و استفاده از آن‌ها، و برخی از روش‌های مهم مربوط به اشیاء در جاوا اسکریپت خواهیم پرداخت.

 

تعریف اشیاء (Objects) در جاوا اسکریپت

اشیاء مجموعه‌ای از خصوصیات (Properties) و متدها (Methods) هستند. خصوصیات اشیاء می‌توانند مقادیر مختلفی را نگه‌داری کنند و متدها توابعی هستند که به عنوان مقادیر خصوصیات عمل می‌کنند. به طور کلی، اشیاء به شما این امکان را می‌دهند که چندین مقدار مرتبط را تحت یک نام مشترک گروه‌بندی کنید.

مثال ساده از تعریف یک شیء


const person = {
  name: 'Ali',
  age: 25,
  greet: function() {
    console.log('Hello, my name is ' + this.name);
  }
};

 

در این مثال، شیء person دارای دو خصوصیت (name و age) و یک متد (greet) است.

 

نحوه‌ی دسترسی به خصوصیات و متدهای اشیاء

برای دسترسی به خصوصیات و متدهای یک شیء، می‌توان از دو روش نقطه‌ای (Dot Notation) و براکت (Bracket Notation) استفاده کرد.

 

دسترسی با استفاده از نقطه

استفاده از نقطه برای دسترسی به خصوصیات یا متدهای یک شیء، روش رایج‌تری است.


console.log(person.name); // Output: Ali
console.log(person.age); // Output: 25
person.greet(); // Output: Hello, my name is Ali

 

دسترسی با استفاده از براکت

روش براکت به شما اجازه می‌دهد که از نام‌های خصوصیت‌هایی استفاده کنید که در قالب یک رشته هستند، یا از نام‌های غیرمجاز برای شناسه‌ها در جاوا اسکریپت استفاده کنید.


console.log(person['name']); // Output: Ali
console.log(person['age']); // Output: 25

const propName = 'name';
console.log(person[propName]); // Output: Ali

 

این روش برای مواقعی که نام خصوصیت‌ها به صورت داینامیک در طول اجرای برنامه تعیین می‌شوند، بسیار مفید است.

 

اضافه و حذف کردن خصوصیات اشیاء

یکی از ویژگی‌های انعطاف‌پذیر اشیاء در جاوا اسکریپت این است که می‌توانید در هر زمان خصوصیات جدیدی به آن‌ها اضافه کنید یا خصوصیات موجود را حذف کنید.

 

اضافه کردن خصوصیت جدید


person.job = 'Developer';
console.log(person.job); // Output: Developer

 

حذف کردن خصوصیت

برای حذف یک خصوصیت، می‌توانید از عملگر delete استفاده کنید:


delete person.age;
console.log(person.age); // Output: undefined

 

پیمایش خصوصیات اشیاء

برای پیمایش خصوصیات یک شیء، می‌توان از حلقه‌ی for...in استفاده کرد.

مثال: استفاده از حلقه‌ی for...in


for (let key in person) {
  console.log(key + ': ' + person[key]);
}

// Output:
// name: Ali
// greet: function() { console.log('Hello, my name is ' + this.name); }
// job: Developer

 

شیء‌های تو در تو (Nested Objects)

اشیاء می‌توانند حاوی اشیاء دیگر به عنوان خصوصیات خود باشند، که به این اشیاء، شیء‌های تو در تو می‌گویند.

مثال از شیء تو در تو


const student = {
  name: 'Sara',
  age: 22,
  address: {
    city: 'Tehran',
    zipCode: '12345'
  },
  courses: ['Mathematics', 'Physics']
};

console.log(student.address.city); // Output: Tehran
console.log(student.courses[0]); // Output: Mathematics

 

متدهای مهم مربوط به اشیاء

جاوا اسکریپت دارای چندین متد داخلی برای کار با اشیاء است. در زیر به برخی از این متدها اشاره می‌کنیم:

 

Object.keys()

این متد آرایه‌ای از تمام کلیدهای یک شیء را برمی‌گرداند.


console.log(Object.keys(person)); // Output: ['name', 'greet', 'job']

 

Object.values()

این متد آرایه‌ای از تمام مقادیر خصوصیات یک شیء را برمی‌گرداند.


console.log(Object.values(person)); // Output: ['Ali', function() { console.log('Hello, my name is ' + this.name); }, 'Developer']

 

Object.entries()

این متد آرایه‌ای از آرایه‌های جفت کلید-مقدار را برمی‌گرداند.


console.log(Object.entries(person));
// Output: [['name', 'Ali'], ['greet', function() { console.log('Hello, my name is ' + this.name); }], ['job', 'Developer']]

 

مقایسه اشیاء

در جاوا اسکریپت، مقایسه مستقیم دو شیء به وسیله‌ی == یا ===، فقط بررسی می‌کند که آیا آن‌ها به یک مکان در حافظه اشاره می‌کنند یا خیر. برای بررسی تساوی دو شیء، باید تمام خصوصیات آن‌ها را با یکدیگر مقایسه کنید.

مثال: مقایسه اشیاء


const obj1 = { a: 1 };
const obj2 = { a: 1 };

console.log(obj1 === obj2); // Output: false

const obj3 = obj1;
console.log(obj1 === obj3); // Output: true

 

نتیجه‌گیری

اشیاء (Objects) یکی از پایه‌های اساسی جاوا اسکریپت هستند که به شما امکان می‌دهند داده‌های پیچیده‌تری را مدیریت کنید و برنامه‌های قدرتمندتری بنویسید. با یادگیری نحوه‌ی تعریف، دسترسی، اضافه و حذف خصوصیات، و همچنین استفاده از متدهای مختلف برای کار با اشیاء، می‌توانید از قدرت کامل این ساختار داده‌ای در جاوا اسکریپت بهره‌مند شوید. آگاهی از نحوه‌ی مدیریت اشیاء و استفاده‌ی صحیح از آن‌ها، مهارت‌های برنامه‌نویسی شما را به سطح بالاتری خواهد رساند.

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

معرفی Vue.js و ویژگی‌های کلیدی آن: فریمورک مدرن برای توسعه وب تعاملی

معرفی Vue.js و ویژگی‌های کلیدی آن: فریمورک مدرن برای توسعه وب تعاملی

28م شهریور 1402

مطالعه بیشتر

پیمایش اشیاء و آرایه‌ها در جاوا اسکریپت: راهنمای کامل برای Object.keys، Object.values، for...in و for...of

پیمایش اشیاء و آرایه‌ها در جاوا اسکریپت: راهنمای کامل برای Object.keys، Object.values، for...in و for...of

4م مهر 1403

مطالعه بیشتر

آموزش ایجاد فرم با استفاده از HTML: طراحی فرم‌های ساده و کاربردی

آموزش ایجاد فرم با استفاده از HTML: طراحی فرم‌های ساده و کاربردی

21م مرداد 1402

مطالعه بیشتر

استفاده از display در CSS: تغییر نحوه نمایش عناصر - راهنمای جامع

استفاده از display در CSS: تغییر نحوه نمایش عناصر - راهنمای جامع

9م آبان 1403

مطالعه بیشتر

استفاده از clip-path در CSS برای برش‌های زیبا و جذاب: راهنمای کامل

استفاده از clip-path در CSS برای برش‌های زیبا و جذاب: راهنمای کامل

16م آبان 1403

مطالعه بیشتر

آموزش استفاده از جدول در HTML: طراحی و استایل‌دهی جدول‌های ساده و پیشرفته

آموزش استفاده از جدول در HTML: طراحی و استایل‌دهی جدول‌های ساده و پیشرفته

21م مرداد 1402

مطالعه بیشتر

آموزش ارتباط با سرور و ارسال درخواست‌های HTTP با Fetch API در جاوا اسکریپت: راهنمای جامع با مثال‌ها

آموزش ارتباط با سرور و ارسال درخواست‌های HTTP با Fetch API در جاوا اسکریپت: راهنمای جامع با مثال‌ها

1م آبان 1403

مطالعه بیشتر

آموزش استایل‌دهی لینک‌ها در CSS: طراحی و تنظیمات ساده برای لینک‌های HTML

آموزش استایل‌دهی لینک‌ها در CSS: طراحی و تنظیمات ساده برای لینک‌های HTML

7م شهریور 1402

مطالعه بیشتر

آموزش کار با رویدادهای فرم و اعتبارسنجی فرم‌ها در جاوا اسکریپت: راهنمای جامع

آموزش کار با رویدادهای فرم و اعتبارسنجی فرم‌ها در جاوا اسکریپت: راهنمای جامع

3م آبان 1403

مطالعه بیشتر

آموزش استفاده از ماژول‌ها (Modules) در جاوا اسکریپت: آشنایی با ES6 Modules - راهنمای کامل

آموزش استفاده از ماژول‌ها (Modules) در جاوا اسکریپت: آشنایی با ES6 Modules - راهنمای کامل

5م آبان 1403

مطالعه بیشتر

آموزش کامل کار با آرایه‌ها و اشیاء در جاوا اسکریپت: ایجاد، دستکاری و پیمایش

آموزش کامل کار با آرایه‌ها و اشیاء در جاوا اسکریپت: ایجاد، دستکاری و پیمایش

2م شهریور 1403

مطالعه بیشتر

آموزش ساخت یک گالری تصویر با استفاده از جاوا اسکریپت: راهنمای گام به گام

آموزش ساخت یک گالری تصویر با استفاده از جاوا اسکریپت: راهنمای گام به گام

3م آبان 1403

مطالعه بیشتر

تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد