js pass by ref vs value

by lbstr

HTML

<div id="log"></div>

JavaScript

var log = function(msg) {
    var $log = log.$log || (log.$log = $('#log'));
    var str = msg.toString();
    if (str === "[object Object]" && typeof JSON !== undefined) {
        str = JSON.stringify(msg);
    }
    $log.append('<div>' + str + '</div>');
};

var num = 42;
var string = "forty-two";
var bool = false;
var date = new Date();
var array = [4, 2, 42];
var object = { "the-answer": 42 };

var numCopy = num;
numCopy = 24;
log(numCopy);
log(num);

var strCopy = string;
strCopy = "twenty-four";
log(strCopy);
log(string);

var boolCopy = bool;
boolCopy = true;
log(boolCopy);
log(bool);

var dateCopy = date;
dateCopy = new Date(5, 5, 1999);
log(dateCopy);
log(date);

var arrCopy = array;
arrCopy.push(24);
log(arrCopy);
log(array);

var objCopy = object;
objCopy["the-question"] = "whats 6*7";
log(objCopy);
log(object);