2014-12-08 113 views
-1

我有一个Javascript对象,我必须遍历的键。我需要检查密钥是否与我的本地变量匹配,如果匹配,我需要该密钥的相应值。如何迭代JavaScript中的对象/散列?

我使用会话属性获取对象。 当我在alert中看到它时,该对象看起来像这样。 {1 = Apple,2 = Orange}。

+0

A *真实*地图或像个地图的对象? – icktoofay 2014-12-08 05:44:42

+2

对所有键使用map.get(key),map.has(key)或map.forEach() – dandavis 2014-12-08 05:46:58

+0

JavaScript中没有* map *对象。你觉得它是什么?你的“地图”是什么样的? – RobG 2014-12-08 06:15:45

回答

-1

最简单的方法是在

yourMap = {'one': 1, 'two':2, ......} 
keyToLocate = 'one' 


for (var key in yourMap) { 
    if (key == keyToLocate){ 
     console.log(key, yourMap[key]); 
    } 
} 

用于...或者你可以使用hasOwnProperty

for (var key in yourMap) { 
    if (yourMap.hasOwnProperty(key)) { 
     console.log(key, yourMap[key]); 
    } 
} 
+0

这不是一个地图,更重要的是,它很愚蠢,你可以问一下if(yourMap [keyToLocate]!= null);不需要循环。 – dandavis 2014-12-08 05:59:00

+0

如果我在'地图'中存储'hasOwnProperty'的密钥怎么办? – icktoofay 2014-12-08 06:02:10

+0

确实会造成问题。我心中有一个简单的旧循环查找技术。 – 2014-12-08 06:05:09