Pass-by-Value in JavaScript

Question:

I have two objects: A and B:

var A={valor:0}
var B={valor:0}
A=B
A.valor=5
console.log(B.valor) // 5

I would like to know how to pass by value, because JavaScript passes objects by reference, in this example I would like b.valor to be equal to 0;

Answer:

Just use Object.assign(alvo, obj) , so the values ​​of the obj properties will be made a simple copy (shallow copy). Example:

var A={valor:0, bola: 1}
var B={valor:0, bola: 2}
A = Object.assign({}, B};
A.valor=5
console.log(A) // {valor:5, bola: 2}
console.log(B) // {valor:0, bola: 2}
Scroll to Top