با استفاده از متد call میتونیم از یک تابع دیگه، جوری استفاده کنیم که مقدار this توی این تابع به آبجکت دلخواه ما اشاره کنه:
function add(first, second, third) { this.result = first + second + third; } const item1 = { result: 0 } const item2 = { result: 0 } const item3 = { result: 0 } add.call(item1, 3, 2, 1); add.call(item2, 9, 3, 2); add.call(item3, 6, 1, 3); alert(item1.result); // 6 alert(item2.result); // 14 alert(item3.result); // 10
اگه تابع ما نیاز به آرگومان داشته باشه، اون رو بصورت جدا جدا پاس میدیم.
همونطور که دیدیم call و apply شبیه به هم هستن. اما یک تفاوت جزئی دارن که توی سوال بعدی با اون آشنا میشیم.
منبع:
