با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
در این جلسه قصد داریم تا تعریف اشیا در جاوا اسکریپت ( JavaScript ) و داده های نوع اولیه در جاوا اسکریپت را به شما آموزش دهیم.
اشیا Object در جاوا اسکریپت بسیار مهم هستند و اگر شما اشیا را درک کنید، کل جاوا اسکریپت را فهمیده اید.
تقریبا همه چیز در جاوا اسکریپت شئ می باشد:
تمام این ها به جز داده های نوع اولیه شی هستند.
یک داده نوع اولیه مقداری است که خاصیت یا همان پروپرتی و متد ندارد.
در جاوا اسکریپت ۵ نوع داده نوع اولیه داریم:
داده های نوع اولیه غیر قابل نغییر هستند(به صورت hardcode نوشته می شوند)
برای مثال x = 3.14 ، شما می توانید مقدار x را تغییر دهید اما نمی توانید مقدار ۳٫۱۴ را تتغییر دهید.
توضیحات | نوع | مقدار |
“Hello” همیشه “Hello” است | string | “Hello” |
۳٫۱۴ همیشه ۳٫۱۴ است | number | ۳٫۱۴ |
true همیشه true است | boolean | true |
false همیشه false است | boolean | false |
null همیشه null است | null (object) | null |
undefined همیشه undefined است | undefined | undefined |
متغیر ها در جاوا اسکریپت تنها می توانند یک مقدار بگیرند.
اشیا نیز متغیر هستند با این تفاوت که می توانند چندین مقدار بگیرند.
متغیرهای جاوا اسکریپت می توانند شامل تکی باشند:
مقادیر به صورت جفت name : value نوشته می شوند:
1 | var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}; |
نکته: یک آبجکت جاوا اسکریپت به مجموعه ای از مقادیر اطلاق می شود.
نام مقادیر در اشیا جاوا اسکریپت خاصیت Property نام دارد.
مقدار | Property |
John | firstName |
Doe | lastName |
۵۰ | age |
blue | eyeColor |
متد ها یا همان توابع اقداماتی هستند که بر روی اشیا انجام می شوند.
خوص اشیا می تواند شمال داده های نوع اولیه، اشیا دیگر و توابع باشند.
یک متد شد یک خاصیت شی است که شامل تعریف تابع می باشد:
خصوصیت | مقدار |
---|---|
firstName | John |
lastName | Doe |
age | ۵۰ |
eyeColor | blue |
fullName | function() {return this.firstName + ” ” + this.lastName;} |
برای ساخت شی object در جاوا اسکریپت راه های مختلفی وجود دارد:
نکته : در ECMAScript 5، یک آبجکت نیز می تواند با تابع ()Object.create ایجاد شود.
این روش آسان ترین راه برای ساخت یک شی می باشد.
با استفاده از لیترال شما شما تعریف و ایجاد را در یک دستور انجام می دهید.
مثال:
1 | var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}; |
فضاهای و خطوط شکسته مهم نیستند. تعریف آبجکت می تواند شامل چندین خط را باشد:
1 2 3 4 5 6 | var person = { firstName: "John", lastName: "Doe", age: 50, eyeColor: "blue" }; |
برای درک بهتر به مثال زیر توجه کنید:
1 2 3 4 5 | var person = new Object(); person.firstName = "John"; person.lastName = "Doe"; person.age = 50; person.eyeColor = "blue"; |
اشیا قابل تغییرند: آن ها به روش ارجاع به مرجع آدرس دهی وی شوند نه با ارجاع به مقدار
اگر person یک شی باشد، دستور زیر یک کپی از person ایجاد نمی کند:
1 | var x = person; // This will not create a copy of person. |
شی x یک کپی از person نیست بلکه خود person است. و هر تغییری در x در person نیز اعمال می شود.
1 2 3 4 | var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"} var x = person; x.age = 10; |
جلسه آموزش تعریف اشیا در جاوا اسکریپت JavaScript نیز به پایان رسید.