Node.js V8 pass by reference

Viewed 28245

I wonder how memory is managed in V8. Take a look at this example:

function requestHandler(req, res){
  functionCall(req, res);
  secondFunctionCall(req, res);
  thirdFunctionCall(req, res);
  fourthFunctionCall(req, res);
};

var http = require('http');
var server = http.createServer(requestHandler).listen(3000);

The req and res variables are passed in every function call, my question is:

  1. Does V8 pass this by reference or does it make a copy in memory?
  2. Is it possible to pass variables by reference, look at this example.

    var args = { hello: 'world' };
    
    function myFunction(args){
      args.newHello = 'another world';
    }
    
    myFunction(args);
    console.log(args);
    

    The last line, console.log(args); would print:

    "{ hello: 'world', newWorld: 'another world' }"
    

Thanks for help and answers :)

1 Answers
Related