विभिन्न परिस्थितियों के लिए नीचे दिए गए कुछ तरीके।
अधिकांश सामान्य मामलों में, पहले तत्व तक पहुंचने का सबसे सरल तरीका है
yourArray[0]
लेकिन इसके लिए आपको यह जाँचना होगा कि क्या वास्तव में मौजूद है।
वास्तविक दुनिया के मामले हैं जहां आप मूल सरणी के बारे में परवाह नहीं करते हैं, और यह जांचना नहीं चाहते हैं कि क्या सूचकांक मौजूद है, आप केवल पहला तत्व या अपरिभाषित इनलाइन प्राप्त करना चाहते हैं।
इस मामले में, आप पहले तत्व को प्राप्त करने के लिए शिफ्ट () विधि का उपयोग कर सकते हैं , लेकिन सतर्क रहें कि यह विधि मूल सरणी को संशोधित करती है (पहले आइटम को हटाती है और वापस लौटाती है)। इसलिए एक सरणी की लंबाई एक से कम हो जाती है। इस पद्धति का उपयोग इनलाइन मामलों में किया जा सकता है, जहां आपको पहले तत्व प्राप्त करने की आवश्यकता होती है, लेकिन आप मूल सरणी की परवाह नहीं करते हैं।
yourArray.shift()
यह जानना महत्वपूर्ण है कि ऊपर दिए गए दो विकल्प केवल एक विकल्प हैं यदि आपका सरणी [0] सूचकांक से शुरू होता है।
ऐसे मामले हैं जहां पहला तत्व हटा दिया गया है, उदाहरण के लिए, अपने एरे को हटाएं [0] अपने सरणी को "छेद" से छोड़ दें। अब [0] तत्व केवल अपरिभाषित है, लेकिन आप पहले "मौजूदा" तत्व प्राप्त करना चाहते हैं। मैंने इसके कई वास्तविक मामले देखे हैं।
इसलिए, यह मानते हुए कि हमें सरणी और पहली कुंजी का कोई ज्ञान नहीं है (या हमें पता है कि छेद हैं), हम अभी भी पहला तत्व प्राप्त कर सकते हैं।
आप पहला तत्व प्राप्त करने के लिए खोज () का उपयोग कर सकते हैं ।
खोज का लाभ () इसकी दक्षता है क्योंकि यह लूप से बाहर निकलता है जब स्थिति को पूरा करने वाले पहले मूल्य को पूरा किया जाता है (नीचे इसके बारे में अधिक)। (आप अशक्त या अन्य खाली मानों को भी छोड़ने के लिए शर्त को अनुकूलित कर सकते हैं)
var firstItem = yourArray.find(x=>x!==undefined);
मैं फ़िल्टर को भी शामिल करना चाहूँगा () पहले सरणी को प्रतिलिपि में "ठीक" करने के विकल्प के रूप में और फिर मूल सरणी को अक्षुण्ण रखते हुए पहला तत्व प्राप्त करूँगा (अनमॉडिफ़ाइड)।
फ़िल्टर को शामिल करने का एक अन्य कारण () यह है कि यह खोजने से पहले अस्तित्व में था () और कई प्रोग्रामर पहले से ही इसका उपयोग कर रहे हैं (यह ईएस 5 है खोज के खिलाफ) ES6 है।
var firstItem = yourArray.filter(x => typeof x!==undefined).shift();
चेतावनी कि फ़िल्टर () वास्तव में एक कुशल तरीका नहीं है (फ़िल्टर) सभी तत्वों से चलता है) और एक और सरणी बनाता है। छोटे सरणियों पर उपयोग करना ठीक है, क्योंकि प्रदर्शन प्रभाव सीमांत होगा, उदाहरण के लिए forEach का उपयोग करने के करीब।
(मुझे लगता है कि कुछ लोग पहले तत्व को प्राप्त करने के लिए ... लूप में उपयोग करने का सुझाव देते हैं, लेकिन मैं इस विधि के खिलाफ सिफारिश करूंगा ... का उपयोग किसी ऐरे से अधिक करने के लिए नहीं किया जाना चाहिए जहां सूचकांक आदेश महत्वपूर्ण है क्योंकि यह नहीं है ' t आदेश की गारंटी दें, हालांकि आप तर्क दे सकते हैं कि ब्राउज़र अधिकतर आदेश का सम्मान करते हैं। वैसे भी, इस मुद्दे को हल नहीं करना चाहिए क्योंकि कई सुझाव देते हैं क्योंकि आप इसे नहीं तोड़ सकते हैं और यह सभी तत्वों के माध्यम से चलेगा। आप के लिए एक सरल का उपयोग करना बेहतर होगा। लूप और कुंजी / मान की जाँच करके
दोनों पाते हैं () और फ़िल्टर () तत्वों के क्रम की गारंटी देते हैं, इसलिए ऊपर के रूप में उपयोग करने के लिए सुरक्षित हैं।