2011-02-15 13 views
47
var obj = { 
    a: "A", 
    b: "B", 
    c: "C" 
} 

console.log(obj.a); // return string : A 

लेकिन मैं इसजावास्क्रिप्ट - कुंजी मूल्य

var name = "a"; 
console.log(obj.name) // but return undefined 

की तरह एक चर के माध्यम से द्वारा प्राप्त करना चाहते हैं कैसे यह करने के लिए> वस्तु?

उत्तर

64

उपयोग [] संपत्तियों की स्ट्रिंग अभ्यावेदन के लिए अंकन:

console.log(obj[name]); 

अन्यथा यह नहीं बल्कि "एक" संपत्ति की तुलना में "नाम" संपत्ति की तलाश में,।

5

उपयोग इस वाक्य:

obj[name] 

ध्यान दें कि obj.x सभी वैध जे एस पहचानकर्ता के लिए obj["x"] रूप में ही है, लेकिन बाद प्रपत्र कुंजी (न केवल वैध पहचानकर्ता) के रूप में सभी स्ट्रिंग स्वीकार करता है।

obj["Hey, this is ... neat?"] = 42 
12

obj [ "एक"] को obj.a इसलिए का उपयोग obj [नाम] आप प्राप्त 'ए'

+0

कृपया ध्यान कि [नाम] obj बराबर है होगा वापस obj.name जो अपरिभाषित है। – Hamid

0

https://jsfiddle.net/sudheernunna/tug98nfm/1/

var days = {}; 
days["monday"] = true; 
days["tuesday"] = true; 
days["wednesday"] = false; 
days["thursday"] = true; 
days["friday"] = false; 
days["saturday"] = true; 
days["sunday"] = false; 
var userfalse=0,usertrue=0; 
for(value in days) 
{ 
    if(days[value]){ 
    usertrue++; 
    }else{ 
    userfalse++; 
    } 
    console.log(days[value]); 
} 
alert("false",userfalse); 
alert("true",usertrue); 
+0

https://jsfiddle.net/sudheernunna/tug98nfm/1/ –

संबंधित मुद्दे