اشیا در جاوااسکریپت۴(این قسمت توابع در اشیا)
متدها یا توابع آبجک یا اشیا در جاوااسکریپت
توابع جاوااسکریپت
یک متد جاوااسکریپت در اشیا یک خصوصیت است که حاوی یک تعریف از تابع جاوااسکریپت میباشد.
حال میخواهیم جدول زیر را به عنوان یک شی در جاوااسکریپت پیاده سازی کنیم.و از تابع fullNameاستفاده کنیم.
[table id=4 /]
نحوه تعریف متد یا تابع در یک شی به صورت زیر میباشد:
methodName:function(){ code Lines }
نحوه دستیابی به متد یک شی به صورت زیر میباشد:
objectName.methodName();
نحوه دستیابی و یا اجرای متد fullName در شی مذکور به صورت زیر میباشد:
name = person.fullName();
وقتی موقع دست یابی به خصوصیتی که به عنوان تابع تعریف شده بعد از نام تابع از () استفاده کنید این تکه کد به عنوان یک تابع اجرا میشود ولی وقتی از () استفاده نکنید مثل کدهایی که در تعریف تابع به کار بردهاید را برمیگرداند.
تک کد زیر کدهای تعریف تابع fullName را به متغیر name انتساب میکند.
name = person.fullName;
استفاده از توابع داخلی جاوااسکریپت
چون در جاوااسکریپت همه چیز به عنوان اشیا پیاده سازی شدهاند باید آنها را مانند متدهای اشیا فراخوانی کنیم.
مثال زیر تمامی حروف رشته را به حروف بزرگ تبدیل میکند.
var message = “Hello world!”;
var x = message.toUpperCase();
تعریف متد یک شی وقتی میخواهیم شی را با استفاده از تابع سازنده تعریف کنیم:
function person(firstName, lastName, age, eyeColor) {
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
this.eyeColor = eyeColor;
this.changeName = function (name) {
this.lastName = name;
};
}