let pos = {x: 0, y: 0, z: 0};let cube_pos = pos;cube_pos.x += 2;console.log(pos);
let pos = {x: 0, y: 0, z: 0};//let cube_pos = {x: pos.x, y: pos.y, z: pos.z};let cube_pos = {...pos};cube_pos.x += 2;console.log(pos);
EXAMPLE CODE:
let pos = {x: 0, y: 0, z: 0};
let cube_pos = pos;
cube_pos.x += 2;
console.log(pos);
RESULT:
Object { x: 2, y: 0, z: 0}
無論是pos、cube_pos,它們的「x,y,z」都被當成相同變數,因為它們儲存在RAM內相同的位置上。
其中一種解法放留言區。
let pos = {x: 0, y: 0, z: 0};
//let cube_pos = {x: pos.x, y: pos.y, z: pos.z};
let cube_pos = {...pos};
cube_pos.x += 2;
console.log(pos);
Object { x: 0, y: 0, z: 0}