[ Web Proxy ]
URL:
Viewing: https://javascript.info/task/call-array-this [Back]  [Original]

Calling in an array context
EN

We want to make this open-source project available for people all around the world.

Help to translate the content of this tutorial to your language!

    Search on Javascript.info:
    Search in the tutorial:
    Light themeDark theme
    DanskEnglishEspaolFranaisIndonesiaItalianoTrkeOzbek
    back to the lesson

    Calling in an array context

    importance: 5

    What is the result? Why?

    let arr = ["a", "b"];
    
    arr.push(function() {
      alert( this );
    });
    
    arr[2](); // ?
    solution

    The call arr[2]() is syntactically the good old obj[method](), in the role of obj we have arr, and in the role of method we have 2.

    So we have a call of the function arr[2] as an object method. Naturally, it receives this referencing the object arr and outputs the array:

    let arr = ["a", "b"];
    
    arr.push(function() {
      alert( this );
    })
    
    arr[2](); // a,b,function(){...}

    The array has 3 values: initially it had two, plus the function.


    Web Proxy Viewer  |  New URL  |  Original Page