¿Por qué cuando paso un objeto a la función para un argumento, se pasa una referencia? Pero cuando paso una de las claves en el objeto como argumento, parece que se pasa un valor en su lugar. ¿Hubiera pensado que donde 25 está almacenado en la memoria, se pasaría la dirección de la memoria?
¿Alguna idea de por qué?
let x = {name: 'Mike', age: 25}; function changeObject(x, y){ x.name = 'Elena'; y = 23; console.log(x); }; changeObject(x, x.age); console.log(x);PRODUCCIÓN
{ name:"Elena", age:25 } { name:"Elena", age:25 }