٪۴۰ تخفیف تابستانه شروع شد! بزرگترین حراج سال ما

به ما بپیوندید

آموزش اعمال عملکرد JavaScript

استفاده مجدد از روش با استفاده از apply()روش ، می توانید روشی بنویسید که در اشیا objects مختلف قابل استفاده باشد. جاوا اسکریپت متد () apply()روش شبیه به call()روش (فصل قبل). در این مثال روش fullName از شخص بر روی person1 اعمال می شود : مثال const person = { fullName: function() {…

محمد یوسفی

27 جولای 2021

استفاده مجدد از روش

با استفاده از apply()روش ، می توانید روشی بنویسید که در اشیا objects مختلف قابل استفاده باشد.


جاوا اسکریپت متد ()

apply()روش شبیه به call()روش (فصل قبل).

در این مثال روش fullName از شخص بر روی person1 اعمال می شود :

مثال

const person = {
  fullName: function() {
    return this.firstName + " " + this.lastName;
  }
}

const person1 = {
  firstName: "Mary",
  lastName: "Doe"
}

// This will return "Mary Doe":
person.fullName.apply(person1);

تفاوت بین تماس () و اعمال ()

تفاوت در این است:

این call()روش آرگومان ها را جداگانه می گیرد .

این apply()روش آرگومان ها را به عنوان یک آرایه در نظر می گیرد .

اگر می خواهید به جای لیست آرگومان از آرایه استفاده کنید ، روش () () بسیار مفید است.


روش اعمال () با استدلال

این apply()روش آرگومان ها را در یک آرایه می پذیرد:

مثال

const person = {
  fullName: function(city, country) {
    return this.firstName + " " + this.lastName + "," + city + "," + country;
  }
}

const person1 = {
  firstName:"John",
  lastName: "Doe"
}

person.fullName.apply(person1, ["Oslo", "Norway"]);

در مقایسه با call()روش:

مثال

const person = {
  fullName: function(city, country) {
    return this.firstName + " " + this.lastName + "," + city + "," + country;
  }
}

const person1 = {
  firstName:"John",
  lastName: "Doe"
}

person.fullName.call(person1, "Oslo", "Norway");

یک روش حداکثر در آرایه ها شبیه سازی کنید

با استفاده از Math.max()روش می توانید بزرگترین عدد را (در یک لیست از اعداد) پیدا کنید :

مثال

Math.max(1,2,3);  // Will return 3

از آنجا که آرایه های جاوا اسکریپت از روش حداکثر () برخوردار نیستند ، می توانید به Math.max()جای آن از روش استفاده کنید.

مثال

Math.max.apply(null, [1,2,3]); // Will also return 3

اولین استدلال (صفر) اهمیتی ندارد. در این مثال استفاده نشده است.

این مثالها همان نتیجه را خواهند داشت:

مثال

Math.max.apply(Math, [1,2,3]); // Will also return 3
Math.max.apply(" ", [1,2,3]); // Will also return 3
Math.max.apply(0, [1,2,3]); // Will also return 3

حالت سخت JavaScript

در حالت دقیق جاوا اسکریپت ، اگر اولین آرگومان apply()روش یک شی نباشد ، به مالک (شی) تابع فراخوانی تبدیل می شود. در حالت “غیر سختگیرانه” ، این موضوع جهانی می شود.

منبع

مطالب مرتبط

0 0 رای ها
امتیازدهی به مقاله
اشتراک در
اطلاع از
guest
0 نظرات
بازخورد (Feedback) های اینلاین
مشاهده همه دیدگاه ها