JavaScript Function Apply
Method Reuse
With the apply()
method, you can write a method that can be
used on different
objects.
The JavaScript apply() Method
The apply()
method is similar to the call()
method (previous chapter).
In this example the fullName method of person is
applied on person1:
Example
const person =
{
fullName: function() {
return this.firstName + " " + this.lastName;
}
}
const person1 =
{
firstName: "Mary",
lastName: "Doe"
}
person.fullName.apply(person1);
The Difference Between call() and apply()
The difference is:
The call()
method takes arguments
separately.
The apply()
method takes arguments as an
array.
The apply() method is very handy if you want to use an array instead of an argument list.
The apply() Method with Arguments
The apply()
method accepts arguments in an array:
Example
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"]);
Compared with the call()
method:
Example
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");
© copyright 2021. All rights reserved.