我有一個非常大的硬編碼索引數組,我想輕鬆地轉換爲關聯數組,所以查找速度更快。定義關聯數組沒有值
var arr = ["a", "b", "c"];
現在我正在通過arr循環並將其值與值進行比較以查看是否存在匹配。現在我有數百個元素,它變得相當慢,並且有一個關聯數組會更快。
看來我不能只是做
var arr = {"a", "b", "c"};
我真的不能添加值,因爲實在是太慢了。
當然,我可以將元素複製到關聯數組或對數組進行排序並進行二分搜索,但只要能夠爲數組元素指定默認值並使用上述語法就會容易得多。
我猜這是不可能的,但?
向對象屬性添加值與速度有什麼關係? – 2013-02-17 05:03:19
@thesystem如果使用散列查找,它可以散列該鍵以找到它所在的存儲桶,這應該減少查找空間。 – alex 2013-02-17 05:04:03
@alex:不,我指的是這樣的:*「我不能真正添加一個值,因爲它太慢了。」* – 2013-02-17 05:06:18