/ / मुझे जावास्क्रिप्ट में जावास्क्रिप्ट को कैसे सेटअप करना चाहिए - जावास्क्रिप्ट

जावास्क्रिप्ट में जावास्क्रिप्ट में सर्कुलर रेफरी कैसे सेट अप करनी चाहिए

मुझे जावास्क्रिप्ट में एक छोटी सी समस्या है। मैं निम्नलिखित करना चाहूंगा:

var peter = {
pet : spot
}

var spot = {
owner : peter
}

उपरोक्त कोड ठीक चलता है लेकिन peter.pet अपरिभाषित होगा। जबकि spot.owner परिभाषित किया जाएगा। वहाँ एक बेहतर तरीका तो सामान की तरह है:

var peter = {
pet : "spot"
}

var spot = {
owner : peter
}

peter.pet = eval(peter.pet)

किसी भी जानकारी की सराहना की जाएगी ...

उत्तर:

जवाब के लिए 5 № 1

चूंकि ऑब्जेक्ट गतिशील हैं, बस जोड़ें pet बाद में:

var peter = {
// anything else you want to set
};

var spot = {
owner : peter
};

peter.pet = spot;

EDIT - पीटर ऑब्जेक्ट में एक फ़ंक्शन जोड़ने पर एक बुरा प्रयास हटा दिया। इसे ठीक करने के लिए, रेनन की पोस्ट देखें।


जवाब के लिए 3 № 2

आपके द्वारा स्पॉट बनाए जाने के बाद संदर्भ सेट करें:

var peter = {
pet : undefined
}

var spot = {
owner : peter
}

peter.pet = spot

जवाब के लिए 2 № 3
var peter = {};
var spot = {owner: peter};
peter.pet = spot;

वैकल्पिक रूप से, आप टाइपिंग को बेहतर कर सकते हैं:

PetOwner = function () {};
PetOwner.prototype.pet = null;

Animal = function (owner) {
this.owner = owner;
this.owner.pet = this;
};
Animal.prototype.owner = null;

var peter = new PetOwner();
var spot = new Animal(peter);