2012-09-30 21 views
11

संभव डुप्लिकेट:
Self-references in object literal declarationsपहुँच जावास्क्रिप्ट एक ही वस्तु में शाब्दिक मूल्य वस्तु

वहाँ किसी भी तरह से उपयोग कर सकते एक ही वस्तु शाब्दिक में एक संपत्ति के नाम का मूल्य है? कुछ इस तरह:

myFunction.init({ 
    varOne: 'something', 
    varTwo: this.varOne + 'something else' 
}) 
+0

बेशक आप कर सकते हैं। गेटर्स और सेटर्स के साथ या फ़ंक्शन बनाकर जो ऑब्जेक्ट के दायरे को ठीक करते हैं। सुनिश्चित नहीं है कि अन्य उत्तर क्यों चुना गया –

उत्तर

14

नहीं, वस्तु शाब्दिक उपयोग करने के लिए कोई रास्ता नहीं है कि वर्तमान परिभाषा के भीतर ही से परिभाषित किया जा रहा है।

यदि आप अन्य गुणों के मूल्यों के आधार पर गुण सेट करना चाहते हैं, तो आपको या तो उन्हें कुछ बाहरी मूल्य (जो खुद संपत्ति नहीं है) पर आधारित करना होगा या ऑब्जेक्ट शाब्दिक परिभाषित करने के बाद प्रारंभकर्ता फ़ंक्शन चलाएं अन्य गुणों के मूल्यों के आधार पर कुछ गुण सेट कर सकते हैं।

+0

ठीक है, त्वरित प्रतिक्रिया के लिए बहुत बहुत धन्यवाद! मुझे एक बाहरी चर बनाना होगा और उस वस्तु के भीतर पहुंच होगी। –

+0

अधिक उदाहरणों के लिए, देखें: http://stackoverflow.com/questions/4616202/self-references-in-object-literal-declarations?lq=1 – Yosi

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