What is the difference between call(), apply(), and bind()?
Metho
Purpose Arguments Invokes
Immediately?
call(
Call a function with a specific this Comma-separat
✅ Yes
apply
Same as call(), but takes array Array ✅ Yes
bind(
Returns a new function with fixed
this
Comma-separat
❌ No
Example:
function greet(greeting) {
console.log(`${greeting}, ${this.name}`);
const user = { name: "John" };
greet.call(user, "Hi");
greet.apply(user, ["Hello"]);
const bound = greet.bind(user, "Hey");
bound();