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}