2010-02-27 19 views
5

मैं एक बहुत सरल प्रश्न (और जांच उत्तर) मिल गया है में संग्रहित है, मैं सिर्फ अगर शायद वहाँ एक बेहतर जवाब देने के वहाँ बाहर देखना चाहते हैं।जावास्क्रिप्ट - पहुँच वस्तु सदस्य जब पहचानकर्ता स्ट्रिंग एक वर

कैसे आप जावास्क्रिप्ट में एक वस्तु सदस्य का उपयोग कर सकते है जब सदस्य पहचानकर्ता अन्य चर में संग्रहीत है? उदाहरण:

state = 'sync'; 

messages = { 
    'sync': 'asdf', 
    'ready': 'asdf', 
    'complete': 'asdf' 
}; 

संभावनाएं: 1. संदेश = eval('messages.' + state);

एक हैश में
  1. बारी संदेश (प्रोटोटाइप या jQuery में - jQuery बारे में निश्चित नहीं) और के माध्यम से पहुँच ढांचे की विधि

वहाँ अन्य क्या तरीके हैं? कुछ भी क्लीनर? PHP में यह आसान $message = $messages->$sync होगा।

मुझे यकीन है कि इस सवाल का कई बार उत्तर दिया गया है कर रहा हूँ, लेकिन यह के लिए ... सभी खोज करने के लिए मुश्किल है मैं जब मैं के लिए 'चर चर'

धन्यवाद खोज eval प्रतिक्रियाएं हैं

उत्तर

9
var message = messages[state]; 

जावास्क्रिप्ट में प्रत्येक ऑब्जेक्ट न केवल एक सामान्य वस्तु में एक वस्तु है, बल्कि यह इसके सदस्यों द्वारा आबादी वाला एक शब्दकोश भी है।

+0

धन्यवाद। पता नहीं था कि आप एक वस्तु हैश की तरह व्यवहार कर सकते हैं। – joshs

+1

लघु और मीठा और सही। बीटीडब्ल्यू, जोश, यह काम करता है कि संदेश वस्तु में आपकी संपत्ति का नाम उद्धरणों में संलग्न है या नहीं। – Robusto

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