作为来自Java的人,Javascript中的对象让我想起了Java中的HashMap。
Javascript:
var myObject = {
firstName: "Foo",
lastName: "Bar",
email: "foo@bar.com"
};
Java:
HashMap<String, String> myHashMap = new HashMap<String, String>();
myHashMap.put("firstName", "Foo");
myHashMap.put("lastName", "Bar");
myHashMap.put("email", "foo@bar.com");
在Java中的HashMap使用key的hashcode()函数来确定桶位置(条目)进行存储和检索。大多数情况下,像put()和get()这样的基本操作性能都是恒定的,直到发生哈希冲突,这些基本操作的性能变为O(n),因为它形成了一个链表以存储冲突的条目。
我的问题是:
- Javascript如何存储对象?
- 操作的性能如何?
- 是否会出现与Java类似的碰撞或其他情况,从而降低性能?
谢谢!