13) آموزش اشیا در جاوااسکریپت (Objects)
آموزش رایگان جاوااسکریپت
در جلسات قبل با انواع داده در جاوااسکریپت آشنا شدیم. با اعداد، رشته ها و آرایه ها در جلسات قبل به طور کامل آشنا شدیم و این جلسه نوبتی هم باشه، نوبت Objectها یا اشیاس. Objectها یکی از انواع داده ای است که در جاوااسکریپت به شدت کاربردیه و در اکثر مواقع استفاده میشه. یه جورایی کاربردی ترین و کامل ترین حالت برای تعریف متغیر است. پس این جلسه رو خوب یاد بگیرید چون مقدمه بحث شی گرایی در جاوااسکریپت در این جلسه گفته میشه و خودتونو برای شی گرایی در ES6 آماده کنید.
دوره مرتبط: آموزش کامل Objectها در جاوااسکریپت
بیشتر از ۱ ساعت آموزش تخصصی Objects (اشیا) به همراه کلی مثال کاربردی برای یادگیری عمیق جاوااسکریپت
اشیا در جاوااسکریپت
خب بیاین با یه مثال ساده در زندگی واقعی مفهوم اشیا رو بهتون یاد بدم. شما یه ماشین در نظر بگیرید، این ماشین شئ یا Object ما محسوب میشه. هر Object (شئ) یه سری ویژگی (Properties) و متد (Methods) داره. در واقع یه ماشین یه سری ویژگی و یه سری متد داره؛ رنگ، وزن و کارخونه سازنده، ویژگی های یک ماشین به حساب میان. مثلا یه ماشین میتونه سفید رنگ باشه، 1000 کیلوگرم وزن داشته باشه و کمپانی سازندش ایران خودرو باشه. و متدهایی مثل ترمز گرفتن و استارت خوردن، متدهای این ماشین محسوب میشن. مثلا متد ترمز گرفتن یعنی زمانی که شما پدال ترمز فشار میدید یه سری اتفاقات میوفته که باعث میشه ماشین سرعتش کم بشه یا زمانی که سویچ ماشین چرخیده میشه، شمع ها جرقه میزنن و بنزین از تو باک به سر سیلندرها میاد و ماشین روشن میشه.
همه ماشین ها یه سری ویژگی ثابت دارن. یعنی همه ماشینا وزن و رنگ و کمپانی دارن اما مقادیرشون متفاوته. (یه ماشین سفیده یکی قرمزه یا یه ماشین 800 کیلوعه یه ماشین 2000 کیلوگرم)
همه ماشین ها یه سری متد ثابت دارن. یعنی همه ماشینا ترمز دارن و استارت میخورن اما نحوه عملکردشون متفاوته. (مثلا پراید ترمز گرفتنش با توکل به خداس اما بنز اینجوری نیست)
Object ها در جاوااسکریپت
همون طور که در جلسه ششم از دوره مقدماتی جاوااسکریپت دیدید، Object یکی از انواع داده ای بود که میشه در جاوااسکریپت تعریف کرد.
جلسه مرتبط: انواع داده در جاوااسکریپت
تفاوت Objects با بقیه
همون طور که میبینید اکثر داده ها مثل String فقط یک مقدار ذخیره میکنند اما Objectها میتونند تعداد زیادی مقدار رو تو خودشون ذخیره کنن.
مثلا برای نوشتن مشخصات یک ماشین از Object استفاده میکنیم و اسمش رو car میذاریم.
var car = {type: "Saipa", model:"111", color: "white"};
Objectها در جاوااسکریپت اینجوری نوشته میشن (Name:Value) و هر ویژگی با یه کاما از هم جدا میشن مثل مثال بالا.
یه مثال دیگه بزنیم که قضیه جا بیوفته؛ مثلا مشخصات یه فرد رو با یه object ذخیره میکنیم.
var person = {firstName: "Mohammad reza", lastName: "Haji maghsoodi", age: 21, eyeColor: "black"};
یا برای مرتب تر دیده شدن بعد از هر کاما (,) یه Enter بزنیم که قشنگ ترر دیده بشه.
var person = {firstName: "Mohammad reza", lastName: "Haji maghsoodi", age:21, eyeColor: "black"};
در مثال بالا رنگ چشم (eyeColor) یک ویژگی یا Property محسوب میشه و black یک مقدار برای ویژگی یا Poperty Value محسوب میشه.
دسترسی به ویژگی های یک Object
دسترسی به Property های یک شئ به دو صورت امکان پذیره که هر دو مدل کار میکنه.
objectName.propertyName or objectName["propertyName"]
مثلا برای دسترسی به سن فرد (مثال بالا) باید به شکل زیر کد بنویسیم.
person.age; // output: 21 or person["age"]; // output: 21
میبینید که خروجی هر دو خط کد بالا یکی است اما مدا اول مرسوم تر است و معمولا به حالت اول مینویسن.
متدهای Object
دسترسی به متدهای یک Object یا شئ هم مشابه دسترسی به ویژگیهاست. برای تعریف یک متد در یک Object، میتونید از توابع استفاده کنید. بیاین یه مثال بزنیم که شامل متدهای یک Object باشه.
var person = { firstName: "Mohammad reza", lastName: "Haji maghsoodi", age: 21, eyeColor: "black", fullName: function() { return this.firstName + " " + this.lastName; } };
در مثال بالا، fullName یک متد است که نام کامل فرد رو برمیگردونه. برای دسترسی و استفاده از این متد به شکل زیر کد مینویسیم:
person.fullName(); // output: "Mohammad reza Haji maghsoodi"
میبینید که متد fullName به درستی کار کرده و نام کامل فرد رو برگردونده.
در این جلسه با مفهوم اشیا (Objects) در جاوااسکریپت آشنا شدیم. دیدیم که چطور میشه ویژگیها و متدهای مختلف رو برای یک شئ تعریف کرد و چطور به اونها دسترسی پیدا کنیم. اشیا ابزار قدرتمندی برای سازماندهی دادهها و رفتارها در جاوااسکریپت هستند و با تمرین بیشتر میتونید به درک عمیقتری از این مفهوم برسید.
برای مشاهده لینک دانلود لطفا وارد حساب کاربری خود شوید!
وارد شویدپسورد فایل : ندارد گزارش خرابی لینک
مطالب زیر را حتما مطالعه کنید
6 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید لغو پاسخ
برای نوشتن دیدگاه باید وارد بشوید.
سلام ممنون واقعا از زحماتتون بهترین اموزش رو اینجا پیدا کردم مثل بقیه اموزش ها نیس به جرعت میتونم بگم بهترین سایت اموزش جاوا اسکریپت در دنیا اینجاس
با تشکر از اقای محمد رضا حاجی مقصودی
سلام و درود دوست عزیز.
نظر لطف شماست. خوشحالم که راضی بودید و امیدوارم بهترین نتیجه رو بگیرید.😊
متوداش چی پس
تو دوره کامل اشیا در جاوااسکریپت بررسی شده است
سلام استاد، چه جلسه خوشمزه ای بود. کیف کلدممم.
درود بر شما، خواهش میکنم 🙂