2009-09-09 5 views
16

में कुंजी ए और 'ए' का मान कैसे प्राप्त करें जावास्क्रिप्ट में कुंजी ए और 'ए' का मूल्य कैसे प्राप्त करें?जावास्क्रिप्ट

var obj = {a:1,'a':2} 

उत्तर

17

पहले कुंजी a दूसरा 'a' द्वारा ओवरराइट किया जाएगा।

obj.a लौट 2.

अपने प्रमुख नाम मान्य Javascript पहचानकर्ता या एक नंबर है, तो जावास्क्रिप्ट आप प्रमुख नामों में उद्धरण छोड़ करने की अनुमति देगा होगा। प्रैक्टिस में, हालांकि, इस तरह भ्रम से बचने के लिए, और जेएसओएन की आवश्यकता होती है, इसलिए हमेशा उद्धरणों का उपयोग करने के लिए खुद को प्रशिक्षित करना बेहतर होता है।

1

कोई अंतर नहीं है।

alert([ 
    obj.a, 
    obj['a'] 
].join("\n")); // returns 2 in both cases 
7

आप नहीं कर सकते - वे एक ही कुंजी हैं, और प्रारंभकर्ता एक वस्तु 'ए' के ​​साथ मूल्य '2' के साथ एक वस्तु बना देगा। इस प्रयास करें:

var obj = {a:1,'a':2}; 

for (var i in obj) 
{ 
    alert(i + '=' + obj[i]); 
} 

और तुम बस मिल जाएगा "= 2 'के जवाब में एक

2

अगर आप वाकई बारे में महत्वपूर्ण नहीं - का उपयोग यात्रा

for(var k in obj) 
    alert(k + "=" + obj[k]) 

आप कुंजी सही मूल्य पता है। obj [k]

3

स्पष्ट रूप से, 'a' एक वर्णक स्ट्रिंग है जो लोअरकेस के साथ सामग्री के रूप में है, लेकिन आप अन्य कुंजी होने की क्या अपेक्षा करते हैं? यदि आप इसे एक चर के मान के रूप में जाना चाहते हैं, तो घुंघराले ब्रेसिज़ वाक्यविन्यास आपकी मदद नहीं करेगा। पायथन के विपरीत, यह वाक्यविन्यास मानता है कि चाबियां तार हैं, और उद्धरण वैकल्पिक हैं।

आप कुछ इस तरह कर दिया था:

var obj = {'givenkey':1, 'a':2} 
:

var a = 'givenkey' 
var obj = {} 
obj[a] = 1 
obj['a'] = 2 

यह करने के लिए एक वस्तु बराबर पैदा करेगा

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