2015-08-25 13 views
5

में एक अज्ञात एकल कुंजी के साथ किसी ऑब्जेक्ट का मान प्राप्त करें I अज्ञात एकल कुंजी वाले ऑब्जेक्ट का मान कैसे प्राप्त कर सकता हूं?जेएस

उदाहरण:

var obj = {dbm: -45} 

मैं जानते हुए भी यह कुंजी है बिना -45 मूल्य प्राप्त करना चाहते हैं।

मुझे पता है कि मैं ऑब्जेक्ट कुंजियों पर लूप कर सकता हूं (जो हमेशा एक होता है)।

for (var key in objects) { 
    var value = objects[key]; 
} 

लेकिन मुझे यह जानना है कि इसके लिए क्लीनर समाधान है या नहीं?

Object.keys({ dbm: -45}); // ["dbm"] 

के बीच के लिए-इन और Object.keys कि Object.keys सब खुद कुंजी नाम वापस आती है और इन के लिए सब कुछ खत्म हो पुनरावृत्ति करने के लिए इस्तेमाल किया जा सकता है मतभेद:

उत्तर

8

Object.keys एक समाधान हो सकता है एक वस्तु के अपने और विरासत कुंजी नाम।

जेम्स ब्रायर्ली आप नीचे दिए गए टिप्पणी की इस फैशन में एक वस्तु का एक अज्ञात संपत्ति प्रदान कर सकते हैं के रूप में:

var obj = { dbm:-45 }; 
var unkownKey = Object.keys(obj)[0]; 
obj[unkownKey] = 52; 

लेकिन आप को ध्यान में रखना है कि एक संपत्ति है कि Object.keys कुछ क्रम में रिटर्न कुंजी नाम बताए त्रुटि-प्रवण हो सकता है।

+2

'obj [Object.keys (obj) [0]]' –