बनाम कहते हैं कि मैं एक और बाद में क्वेरी (Node.js वातावरण में नेवला ODM साथ MongoDB में) प्रति उपयोगकर्ता आइटमों की सूची बनाए रखने के लिए अगर एक आइटम एक उपयोगकर्ता के स्वामित्व में है देखना चाहते हैं देता है। उदाहरण के लिए, मैं प्रत्येक उपयोगकर्ता के सभी पसंदीदा रंगों को स्टोर करना चाहता हूं, और बाद में देख सकता हूं कि विशिष्ट रंग का एक विशिष्ट उपयोगकर्ता स्वामित्व में है या नहीं। ऐसा लगता है कि उपयोगकर्ता दस्तावेज़ के भीतर एक सरणी के बजाय, रंग दस्तावेज़ को एम्बेडेड ऑब्जेक्ट के रूप में स्टोर करना बेहतर होगा। कारण है कि है कि यह एक रंग एक वस्तु में मौजूद रहने पर देखने के लिए जाँच करने के लिए और अधिक कुशल लगता है के रूप में मैं सिर्फ अगर वस्तु संपत्ति मौजूद है देखने के लिए जाँच कर सकते हैं:MongoDB सरणियों वस्तुओं
if(user.colors.yellow){
//true case
} else {
//false case
}
एक सरणी बनाम जहाँ मैं के माध्यम से पुनरावृति करने के लिए है
for (var i = 0; i < user.colors.length; i++) {
if(user.colors[i] === "yellow"){
//true case
} else {
//false case
}
}
हालांकि, उदाहरण मैं ऑनलाइन देखा है में से कई से, यह बात इस प्रकार के सरणियों का उपयोग कर की तरह लगता है काफी प्रचलित है: पूरे सरणी रंग कहीं मौजूद है यदि सरणी में देखने के लिए। क्या मैं कुछ भूल रहा हूँ? पेशेवरों/विपक्ष क्या हैं, और ऐसा करने का सबसे अच्छा तरीका क्या है?
आप इस तरह के सलाह के लिए कोई लिंक प्रदान कर सकते हैं: अलग सूचकांक प्रत्येक रंग (बजाय सिर्फ
colors
की तरह आप ऊपर होगा की) करने के लिए है? – c69