()Function bind
متد ()bind یک نسخه جدید از تابع میسازه که همیشه this مشخصی دارد و میتواند آرگومانهای پیشفرض هم داشته باشد.
🔹 تفاوت اصلی با ()call و ()apply این است که:
-
()callو()applyتابع را همان لحظه اجرا میکنند. -
()bindیک تابع جدید میسازد که بعداً میتوان آن را فراخوانی کرد.
1️⃣ سینتکس
-
func→ تابع اصلی -
thisArg→ مقداری کهthisدر تابع خواهد بود -
arg1, arg2, ...→ آرگومانهای پیشفرض
2️⃣ مثال ساده
🔹 this همیشه به person اشاره میکند و آرگومان "Hello" از قبل تنظیم شده است.
3️⃣ استفاده در callback
یکی از کاربردهای رایج ()bind جلوگیری از تغییر this در callback ها است:
🔹 بدون bind(), this در setTimeout به window اشاره میکرد.
4️⃣ پیشتنظیم آرگومانها (Partial Application)
🔹 با این روش میتوان آرگومانها را از قبل تنظیم کرد و تابع جدید ساخت.
5️⃣ جمعبندی
-
()bindیک نسخه جدید از تابع میسازد -
این نسخه همیشه
thisمشخصی دارد -
میتوان آرگومانهای پیشفرض تعریف کرد
-
مناسب برای callback ها، event handlers، و partial application
HTML
Tailwind Css
Bootstrap 5
Java script
++C
Python
Three.js
Gsap
Sass
SQL
React