تخفیف ویژه

Object یا شئ در جاوا اسکریپت چیست؟

دسته بندی: آموزش
زمان مطالعه: 8 دقیقه
۱۴ آذر ۱۳۹۷

زبان برنامه نویسی جاوا اسکریپت از آن دسته از زبان‌های برنامه نویسی است که همه چیز در آن به اشیا یا همان object‌ها بستگی دارد، در واقع شی در جاوا اسکریپت حرف اول را میزند. اگر قصد برنامه نویسی با استفاده از جاوا اسکریپت را دارید باید با شی در جاوا اسکریپت آشنا شوید. در این مطلب قصد داریم کمی بیشتر درباره شی در جاوا اسکریپت صحبت کنیم.

فهرست محتوای این مقاله

انواع object در جاوا اسکریپت

به صورت کلی شی در جاوا اسکریپت را می‌توان به صورت زیر دسته بندی کرد:

متغیرهای بولی در جاوا اسکریپت در واقع یک شی در جاوا اسکریپت هستند، به صورت کلی تمامی داده‌های اولیه از جمله متغیرهای بولی، متغیرهای عددی، متغیرهای رشته ای و ... یک شی در جاوا اسکریپت محسوب می‌شوند. متغیر تاریخ همواره یک شی است، متغیرهای ریاضی یا همان Math در جاوا اسکریپت یک شی به شمار می‌آیند، regular expression همواره یک شی هستند، آرایه‌ها شی محسوب می‌شوند، توابع یک شی در جاوا اسکریپت هستند، خود Object‌ها یک شی در جاوا اسکریپت محسوب می‌شوند.

 شی در جاوا اسکریپت

یک مثال از تعریف شی در جاوا اسکریپت

اگر قصد دارید با تعریف یک شی در جاوا اسکریپت آشنا شوید، بهتر است مثال زیر را در نظر بگیرید:

<script>

               Var person = “ John Doe” ;

               Document.getElementById( “demo” ).innerHTML = person ;

               </script>

اشیا را نیز می‌توان به عنوان متغیر در جاوا اسکریپت در نظر گرفت، با این تفاوت که شی می‌تواند چندین مقدار را در خود نگه دارد و مقادیر را به صورت جفت‌های name: value نوشته می‌شود. یا به عنوان مثالی دیگر قطعه کد زیر را در نظر بگیرید:

<script>

               Var person = {

                               first Name: “John” ,

                               last Name: “Doe” ,

                               age: 50,

                               eye Color: “blue”

               };

               Document.getElementById( “demo” ).innerHTML = person.firstName + “ “ + person.lastName;

</script>

 شی در جاوا اسکریپت

Property‌های یک شی در جاوا اسکریپت

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

یکی از این روش‌ها دسترسی به خواص یک شی از طریق دات یا همان نقطه می‌باشد، برای این کار می‌توان دستور زیر را در نظر گرفت:

ObjectName.property

به عنوان مثال person.age

روش دیگر برای این کار استفاده از براکت می‌باشد، برای انجام این کار دستور زیر را در نظر بگیرید:

objectName[ “property” ]

به عنوان یک مثال از این دستور person[ “age”] را در نظر گرفت.

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

objectName[expression]

برای یک مثال از این دستور می‌توان مثال زیر را در نظر گرفت:

X= “age” ; person[x]

 شی در جاوا اسکریپت

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

یکی دیگر از خصوصیت‌های فوق العاده ای که یک شی در جاوا اسکریپت دارد این است که می‌توانید یک شی را مشخص کنید و تمامی Property‌های آن را از طریق یک حلقه فور بدست بیاورید. ساختار نگارشی این دستور به شکل زیر می‌باشد:

for( variable in object) {

               code to be executed

}

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

Var person = { name: “John” , name: “Does” , age:25};

for (x in person) {

               txt += preson[x] ;

}

 شی در جاوا اسکریپت

افزودن و حذف یک شی در جاوا اسکریپت

اگر قصد اضافه کردن یک ویژگی و خاصیت جدید به شی خود را دارید می‌توانید به صورت زیر این کار را انجام دهید، فرض کنید شی person را دارید:

Person.nationality = “English” ;

اگر قصد دارید یک ویژگی و خاصیت را از مجموعه خاصیت‌های یک شی حذف کنید نیز می‌توانید به صورت زیر این کار را انجام دهید:

var person = {firstName: “john” , lastName: “Doe” , age: 50, eyeColor: “blue” };

delete person.age; // or delete person[“age”];

 شی در جاوا اسکریپت

چگونه یک شی در جاوا اسکریپت بسازیم؟

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

یکی از روش‌های ایجاد یک شی در جاوا اسکریپت استفاده از object literal برای این کار است، روش دیگر استفاده از کلید واژه new است و روش آخر نیز استفاده از کانستراکتور می‌باشد. استفاده از object literal برای ساخت یک شی جدید به صورت زیر است:

<script>

               Var person = { firstName: “john” , lastName: “Doe” , age: 50, eyeColor: “blue” } ;

               Document.getElementById( “demo” ).innerHTML =

               Person.firs Name + “ is “ + person.age + “ years old.” ;

</script>

حال برای ایجاد یک شی با استفاده از کلید واژه new  نیز به طریق زیر عمل می‌کنیم:

<script>

               Var person = new Object( );

               Person.first Name = “John” ;

               Peson.last Name = “Doe” ;

               Person.age = 50;

               Person.eye Color = “blue” ;

               Document.getElementById( “demo” ).innerHTML =

               Person.firstName + “ is  “ + person.age + “ years old. “ ;

</script>

در واقع دو روش گفته شده هر دو یک کار خاص را انجام می‌دهند و فقط نحوه انجام آن‌ها متفاوت می‌باشد.

 شی در جاوا اسکریپت

ساخت شی در جاوا اسکریپت با استفاده از object constructor

در دو روشی که قبلا گفتیم شما فقط می‌توانید هر دفعه یک شی بسازید ولی در این روش یاد می‌گیرید که با ساخت یک object type اشیا بسیار زیادی را بسازید.

<script>

               Function person(first, last, age, eye) {

                               this.firstName = first;

                               this.lastName = last;

                               this.age = age;

                               this.eye Color = eye;

               }

               Var my Father = new person ( “ John ”, “ Doe ” , 50, “ blue ”);

               Var myMother = new peron ( “ Sally ”, “ Rally ”, 48, “ green ”);

               Document.getElementById ( “ demo ” ).innerHTML =

               “My father is “ + my Father.age + “ . My mother is “ + my Mother.age;

</script>

چه امتیازی به این مقاله می دید؟

نظرات کاربران

اولین دیدگاه این پست رو تو بنویس !

ارسال دیدگاه
خوشحال میشیم دیدگاه و یا تجربیات خودتون رو با ما در میون بذارید :