شیء در JavaScript
- صفحه قبلی توابع JS
- صفحه بعدی رویدادهای JS
شیء، ویژگی و روشهای واقعی زندگی
در زندگی واقعی، خودرو یکشیء.
خودروها دارای ویژگیهایی مانند وزن و رنگ هستندویژگی، و نیز عملهایی مانند شروع و توقف داردمетод:
شیء | ویژگی | مетод |
---|---|---|
car.name = porsche car.model = 911 car.length = 4499mm car.color = white |
car.start() car.drive() car.brake() car.stop() |
تمام خودروهاویژگیدارند، اما مقدارهای ویژگیها از خودرو به خودرو متفاوت است.
تمام خودروهامетод، اما روشها در زمانهای مختلف اجرا میشوند.
شیء در JavaScript
شما قبلاً یاد گرفتهاید که متغیرهای JavaScript حامل مقدارهای داده هستند.
این کد یکمقدار یکتا(porsche) به متغیر carمتغیر:
var car = "porsche";
شیء نیز متغیر است. اما شیء شامل مقدارهای بیشتری است.
این کدمقدارهای چندگانه(porsche, 911, white) به متغیر carمتغیر:
var car = {type:"porsche", model:"911", color:"white"};
مقدار بهنام:مقداربا استفاده از روش نام:مقدار نوشته میشود (نام و مقدار با کاما جدا میشوند).
شیء JavaScript به صورتمقدار نامگذاری شدهحامل است.
ویژگی شیء
نام:مقدار به عنوانویژگی.
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
ویژگی | مقدار ویژگی |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
مетод شیء
شیء نیز میتواندمетод.
مетодی است که بر روی شیء اجرا میشودعمل.
مетод بهتعریف تابعدر ویژگی ذخیره میشود.
ویژگی | مقدار ویژگی |
---|---|
firstName | Bill |
lastName | Gates |
age | 62 |
eyeColor | blue |
fullName | function() {return this.firstName + " " + this.lastName;} |
مетод به عنوان ویژگی برای ذخیره کردن توابع است.
مثال
var person = { firstName: ", Bill", lastName : ", Gates", id : 678, fullName : function() { return this.firstName + " " + this.lastName; } };
کلمه کلیدی this
در تعریف تابع،this
مستند به "مالک" این تابع است.
در مثال بالا،this
به معنای "دارنده" تابع fullName است شیء person.
به عبارت دیگر،this.firstName
معنای معنای object thisویژگی firstName
لطفاً به کلمه کلیدی this در JSدر این فصل بیشتر درباره کلمه کلیدی this یاد میگیریم.
تعریف شیء
ما یک شیء JavaScript تعریف کردهایم (ایجاد کردهایم):
مثال
var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};
حالتهای خالی و خطوط شکسته مجاز هستند. تعریف شیء میتواند از خطوط مختلف پیروی کند:
مثال
var person = { firstName:"Bill", lastName:"Gates", age:50, eyeColor:"blue" };
دسترسی به ویژگیهای شیء
شما میتوانید به دو روش به ویژگیهای شیء دسترسی پیدا کنید:
objectName.propertyName
یا
objectName["propertyName"]
مثال 1
person.lastName;
مثال 2
person["lastName"];
دسترسی به روشهای شیء
شما میتوانید از این دستورات برای دسترسی به روشهای شیء استفاده کنید:
objectName.methodName())
مثال
name = person.fullName();
اگربدون استفاده از () اگر به روش fullName دسترسی پیدا کنید، بازخوردتعریف تابع:
مثال
name = person.fullName;
روشها در واقع به عنوان ارزشهای ویژگی ذخیره شدهاند.
لطفاً رشتهها، اعداد و مقادیر Boolean را به عنوان شیء بخشید!
اگر با استفاده از کلمه کلیدی "new" متغیرهای JavaScript را بخشید، آن متغیر به عنوان یک شیء ایجاد خواهد شد:
var x = new String(); // بخشیدن x به عنوان یک شیء String var y = new Number(); // بخشیدن y به عنوان یک شیء Number var z = new Boolean(); // بخشیدن z به عنوان یک شیء Boolean
از استفاده از شیءهای رشته، عددی یا منطقی خودداری کنید. آنها پیچیدگی کد را افزایش داده و سرعت اجرا را کاهش میدهند.
شما در بخشهای بعدی این آموزش بیشتر درباره شیء یاد خواهید گرفت.
کتابهای درسی
برای اطلاعات بیشتر شیء در JavaScriptبرای اطلاعات بیشتر، مطالب مرتبط در آموزش JavaScript پیشرفته را بخوانید:
- فناوریهای مستقل ECMAScript
- این بخش به معرفی اصطلاحات فناوری مستقل، نیازهای زبان مستقل و ساختار شیء میپردازد.
- کاربرد شیء ECMAScript
- این بخش به توضیح نحوه تعریف و نمونهگیری شیء، نحوه ارجاع و حذف شیء و مفهوم پیوند میپردازد.
- نوع شیء ECMAScript
- این بخش سه نوع شیء ECMAScript را معرفی میکند: شیء محلی، شیء داخلی و شیء میزبان، و لینکهای مراجعه به دستورالعملهای مرتبط را ارائه میدهد.
- دامنه شیء ECMAScript
- این بخش درباره دامنه ECMAScript و کلید this توضیح میدهد.
- تعریف کلاس یا شیء ECMAScript
- این بخش به طور دقیق توضیح میدهد که چگونه شیء یا کلاس ECMAScript ایجاد شوند.
- تغییر شیء ECMAScript
- این بخش توضیح میدهد که چگونه با ایجاد روشهای جدید یا تغییر روشهای موجود، شیء را تغییر دهیم.
- صفحه قبلی توابع JS
- صفحه بعدی رویدادهای JS