difference between call and apply javascript

difference between call and apply in JavaScript

What is the difference between call and apply?

CALL  -  

Call a function with the specified arguments. You can use call, if you know how many argument are going to pass to the functions.


Call a function with argument provided as an array. You can use apply if you don't know how many argument are going to pass to the functions.

Both (call and apply) are using to call a functions.

Here is an advantage over apply and call. The .call() method is little bit faster than .apply() method.

Go to live demo example http://embed.plnkr.co/4Rb8Ur/preview

Example code as given below.

<!DOCTYPE html>
    <meta charset="utf-8" />
    <link rel="stylesheet" href="style.css" />
        var var1 = {my: "Obj1" };

        var var2 = {my: "Obj2"};

        function preview(par1, par2) {
            alert(this.my + ' ' + par1 + ' ' + par2);
            console.log(this.my, par1, par2);

        //using call as given below
        preview.call(var1, "First", "Second"); //output: var1 First Second

        //using apply as given below
        preview.apply(var2, ["First", "Second"]); //output: var2 First Second

        //using basic as given below
        preview("First", "Second");//output: undefined "First", "Second"
        <h3>Refresh the page and see the alert result or go to console window and see the result.</h3>

The output: go to link http://embed.plnkr.co/4Rb8Ur/preview

Thank you!


Anil Singh is an author, tech blogger, and software programmer. Book writing, tech blogging is something do extra and Anil love doing it. For more detail, kindly refer to this link..

My Tech Blog - https://www.code-sample.com/
My Books - Book 1 and Book 2

www.code-sample.com/. Powered by Blogger.