Javascript - 通过引用传递对象

ind*_*man 4 javascript arrays prototype push prototypejs

可能重复:
如何存储对数组中变量的引用?

请考虑以下代码:

var a = 'cat';
var b = 'elephant';
var myArray = [a,b];

a = 'bear';
Run Code Online (Sandbox Code Playgroud)

myArray [0]仍将返回'cat'.有没有办法在数组中存储引用而不是克隆,以便myArray [0]将返回'bear'?

hob*_*key 7

虽然我同意其他人说你应该使用myArray [0] =无论如何,如果你真的想要完成你想要完成的任务,你可以确保数组中的所有变量都是对象.

var a = {animal: 'cat'},
    b = {animal: 'elephant'};

var myArray = [a, b];

a.animal = 'bear';
Run Code Online (Sandbox Code Playgroud)

myArray [0] .animal现在是'熊'.


Gar*_*eth 6

不.Javascript不以这种方式做引用.