4

我有以下 JavaScripts 对象:

var foo = {"foofoo":value};
var bar = {"barbar":value2}; //and so on

这些对象将被添加到几个数组中:

var container = [foo, bar, baz, etc];
var container2 = [foo, bar, glob, etc]; //and so on, for lots of containers.

如果我有很多对象(例如 foo)放入这些数组中,那么使用某种哈希码表并通过某种 UID 存储对象是否有利?还是 JavaScript 的引用传递已经给了我这个特性?

http://www.timdown.co.uk/jshashtable/似乎提供了这样的功能。

抱歉,我对 JavaScript 的了解不是很全面。

编辑:我想另一种更一般地重新表述这个问题的方法 - 是否存在哈希表对通过引用传递对象的语言(如 JavaScript)有用的情况?

4

2 回答 2

7

Javascript 对象总是通过引用传递;不可能无意中创建副本。

你没有什么可担心的。

于 2012-05-30T02:17:49.343 回答
0

container[0].foofoo您可以通过更改然后阅读它来轻松地测试它container2[0].foofoo

它将显示值已更改,这意味着 JavaScript 使用对象引用。

于 2012-05-30T02:18:59.077 回答