2011-11-15 103 views
0

這裏是我自定義的對象,用於比較..從響應我得到value,現在我必須將該值與此對象中的keys匹配並返回key與鍵匹配的值

+0

你能更清楚?你想匹配鍵值和返回鍵?你是否試圖檢查該值是否存在於對象中? – pradeek

+0

@pradeek:是的,我想比較 –

+0

然後檢查heartRateRegular [key]是否未定義 – pradeek

回答

1

這可能爲你工作:通過所有對象的鍵

for(key in heartRateRegular) 
    if (key == value) 
     return key; 

for..in條款迭代。這就是如果你想檢查你的對象的Keys的價值。如果您想檢查對你對象的Values值,請執行下列操作:

for(key in heartRateRegular) 
    if (heartRateRegular[key] == value) 
     return key; 
+0

但我得到的反應是不規則的,這是值,我如何檢查它是否存在 –

+0

我編輯了我的響應清晰(我希望...) –

1

將這項工作嗎?

function getValueFromKey(key) { 
    for (key in heartRateRegular) { 
     if (heartRateRegular[key] == response) return key; 
    } 
} 

var heartRateRegular = { 
    I: 'Irregular', 
    Ii: 'Irregularly Irregular', 
    Ir: 'Irregularly Regular', 
    R: 'Regular', 
    Ri: 'Regularly Irregular' 
} 

response = 'Irregularly Irregular'; 
alert(getValueFromKey(response)); 
//alerts 'Ii' 

演示 - http://jsfiddle.net/WydQh/

+0

它更容易,更好地檢查heartRateRegular [鍵]是否未定義或不 – pradeek