JSFiddle - React, Tailwind, and code Playground

JavaScript

function changea(a) {
  a = 100; // does not change a
}  // no return

function changez(z) {
  z.id = 100;  // does change z
} // no return

var a = 0;  // a is zero

changea(a)  // a variable

alert('variable a is equal to ' + a); // why does this stay at zero?

var z = {id: 0};
changez(z);
alert('variable z.id is equal to ' + z.id); // why does this change to 100