title: What does the first argument of Function::Call in V8 Engine mean?
body: <p>In node-addon-example, <a href="https://github.com/nodejs/node-addon-examples/blob/b2737e89abd00b7fc4468b38893b31c57c7d8fd9/3_callbacks/node_0.10/addon.cc#L11" rel="nofollow">line 11 of <code>3_callbacks/addon.cc</code></a> reads:</p>
  
  <pre><code>cb-&gt;Call(Context::GetCurrent()-&gt;Global(), argc, argv);
  </code></pre>
  
  <p><a href="https://v8docs.nodesource.com/node-0.10/d5/d54/classv8_1_1_function.html#a111b53439348e8726a5100ca5619484c" rel="nofollow">V8's documentation</a> shows that:</p>
  
  <pre><code>V8EXPORT Local&lt;Value&gt; v8::Function::Call(Handle&lt;Object&gt; recv,
      int argc,
      Handle&lt;Value&gt; argv[]
  );
  </code></pre>
  
  <p>So <code>Context::GetCurrent()-&gt;Global()</code> is used as <code>Handle&lt;Object&gt; recv</code>.</p>
  
  <p>But what does <code>recv</code> stand for? What does it mean? And why is it appropriate to use <code>Context::GetCurrent()-&gt;Global()</code> in this case?</p>