# जावास्क्रिप्ट मूलभूत गोष्टी: अरेज आणि लूप्स ![जावास्क्रिप्ट मूलभूत गोष्टी - अरेज](../../../../translated_images/webdev101-js-arrays.439d7528b8a294558d0e4302e448d193f8ad7495cc407539cc81f1afe904b470.mr.png) > स्केच नोट [Tomomi Imura](https://twitter.com/girlie_mac) यांच्याकडून ## व्याख्यानपूर्व क्विझ [व्याख्यानपूर्व क्विझ](https://ff-quizzes.netlify.app/web/quiz/13) या धड्यात जावास्क्रिप्टच्या मूलभूत गोष्टींचा समावेश आहे, ही ती भाषा आहे जी वेबवर संवादक्षमतेसाठी वापरली जाते. या धड्यात तुम्ही अरेज आणि लूप्सबद्दल शिकाल, जे डेटा हाताळण्यासाठी वापरले जातात. [![अरेज](https://img.youtube.com/vi/1U4qTyq02Xw/0.jpg)](https://youtube.com/watch?v=1U4qTyq02Xw "अरेज") [![लूप्स](https://img.youtube.com/vi/Eeh7pxtTZ3k/0.jpg)](https://www.youtube.com/watch?v=Eeh7pxtTZ3k "लूप्स") > 🎥 वरील प्रतिमांवर क्लिक करा अरेज आणि लूप्सबद्दल व्हिडिओ पाहण्यासाठी. > तुम्ही हा धडा [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101-arrays/?WT.mc_id=academic-77807-sagibbon) वर घेऊ शकता! ## अरेज डेटासोबत काम करणे ही कोणत्याही भाषेसाठी सामान्य गोष्ट आहे, आणि जेव्हा डेटा संरचनात्मक स्वरूपात, जसे की अरेजमध्ये साठवला जातो, तेव्हा हे काम खूप सोपे होते. अरेजमध्ये, डेटा यादीसारख्या संरचनेत साठवला जातो. अरेजचा एक मोठा फायदा म्हणजे तुम्ही एका अरेजमध्ये वेगवेगळ्या प्रकारचा डेटा साठवू शकता. ✅ अरेज आपल्या आजूबाजूला आहेत! तुम्ही अरेजचे एखादे प्रत्यक्ष जीवनातील उदाहरण देऊ शकता का, जसे की सौर पॅनेल अरे? अरेजसाठी सिंटॅक्स म्हणजे चौकोनी कंसांची जोडी. ```javascript let myArray = []; ``` हे एक रिकामे अरे आहे, परंतु अरेज आधीच डेटासह भरलेले घोषित केले जाऊ शकते. अरेजमधील अनेक मूल्ये स्वल्पविरामाने वेगळी केली जातात. ```javascript let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"]; ``` अरेजमधील मूल्यांना **इंडेक्स** नावाचे एक अद्वितीय मूल्य दिले जाते, जे अरेजच्या सुरुवातीपासूनच्या अंतरावर आधारित असते. वरील उदाहरणात, "Chocolate" या स्ट्रिंगचे इंडेक्स 0 आहे, आणि "Rocky Road" चा इंडेक्स 4 आहे. चौकोनी कंसांसह इंडेक्स वापरून अरेजमधील मूल्ये मिळवता, बदलता किंवा घालता येतात. ✅ तुम्हाला आश्चर्य वाटते का की अरेज 0 इंडेक्सपासून सुरू होतात? काही प्रोग्रामिंग भाषांमध्ये, इंडेक्स 1 पासून सुरू होतो. यामागे एक मनोरंजक इतिहास आहे, जो तुम्ही [विकिपीडियावर वाचू शकता](https://en.wikipedia.org/wiki/Zero-based_numbering). ```javascript let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"]; iceCreamFlavors[2]; //"Vanilla" ``` तुम्ही इंडेक्सचा उपयोग करून मूल्य बदलू शकता, असे: ```javascript iceCreamFlavors[4] = "Butter Pecan"; //Changed "Rocky Road" to "Butter Pecan" ``` आणि तुम्ही दिलेल्या इंडेक्सवर नवीन मूल्य घालू शकता, असे: ```javascript iceCreamFlavors[5] = "Cookie Dough"; //Added "Cookie Dough" ``` ✅ अरेजमध्ये मूल्ये घालण्यासाठी अधिक सामान्य पद्धत म्हणजे अरे ऑपरेटर जसे की array.push() वापरणे. अरेजमध्ये किती आयटम्स आहेत हे शोधण्यासाठी `length` प्रॉपर्टी वापरा. ```javascript let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"]; iceCreamFlavors.length; //5 ``` ✅ स्वतः प्रयत्न करा! तुमच्या ब्राउझरच्या कन्सोलमध्ये स्वतः तयार केलेल्या अरेजवर काम करा आणि त्यात बदल करा. ## लूप्स लूप्स आपल्याला पुनरावृत्ती किंवा **आवर्ती** कार्ये करण्यास अनुमती देतात, आणि त्यामुळे वेळ आणि कोड वाचतो. प्रत्येक पुनरावृत्तीमध्ये त्यांचे व्हेरिएबल्स, मूल्ये आणि अटी वेगळ्या असू शकतात. जावास्क्रिप्टमध्ये वेगवेगळ्या प्रकारचे लूप्स आहेत, आणि त्यांच्यात लहान फरक आहेत, परंतु ते मूलत: एकच काम करतात: डेटावर लूप करणे. ### फॉर लूप `for` लूपसाठी पुनरावृत्ती करण्यासाठी 3 भाग आवश्यक आहेत: - `counter` एक व्हेरिएबल जे सामान्यतः पुनरावृत्तीची संख्या मोजण्यासाठी एका संख्येसह प्रारंभ केले जाते - `condition` तुलना ऑपरेटर वापरून अभिव्यक्ती जी `false` झाल्यावर लूप थांबवते - `iteration-expression` प्रत्येक पुनरावृत्तीच्या शेवटी चालते, सामान्यतः काउंटर मूल्य बदलण्यासाठी वापरले जाते ```javascript // Counting up to 10 for (let i = 0; i < 10; i++) { console.log(i); } ``` ✅ हा कोड ब्राउझर कन्सोलमध्ये चालवा. काउंटर, कंडीशन किंवा इटरेशन एक्सप्रेशनमध्ये छोटे बदल केल्यावर काय होते? तुम्ही ते उलट चालवू शकता का, म्हणजेच काउंटडाउन तयार करू शकता? ### व्हाईल लूप `for` लूपच्या सिंटॅक्सच्या विपरीत, `while` लूप्ससाठी फक्त एक अट आवश्यक असते जी अट `false` झाल्यावर लूप थांबवते. लूपमधील अटी सामान्यतः काउंटरसारख्या इतर मूल्यांवर अवलंबून असतात, आणि लूप दरम्यान त्यांचे व्यवस्थापन केले पाहिजे. काउंटरसाठी प्रारंभिक मूल्ये लूपच्या बाहेर तयार केली पाहिजेत, आणि अटी पूर्ण करण्यासाठी कोणत्याही अभिव्यक्ती, काउंटर बदलणे यासह, लूपच्या आत व्यवस्थापित केली पाहिजेत. ```javascript //Counting up to 10 let i = 0; while (i < 10) { console.log(i); i++; } ``` ✅ तुम्ही फॉर लूप आणि व्हाईल लूप यापैकी कोणता निवडाल? 17K प्रेक्षकांना याच प्रश्नाचे उत्तर हवे होते StackOverflow वर, आणि काही मते [तुमच्यासाठी मनोरंजक असू शकतात](https://stackoverflow.com/questions/39969145/while-loops-vs-for-loops-in-javascript). ## लूप्स आणि अरेज अरेज लूप्ससह अनेकदा वापरले जातात कारण बहुतेक अटी लूप थांबवण्यासाठी अरेजच्या लांबीची आवश्यकता असते, आणि इंडेक्स काउंटर मूल्य देखील असू शकतो. ```javascript let iceCreamFlavors = ["Chocolate", "Strawberry", "Vanilla", "Pistachio", "Rocky Road"]; for (let i = 0; i < iceCreamFlavors.length; i++) { console.log(iceCreamFlavors[i]); } //Ends when all flavors are printed ``` ✅ तुमच्या ब्राउझरच्या कन्सोलमध्ये स्वतः तयार केलेल्या अरेजवर लूपिंग करून प्रयोग करा. --- ## 🚀 आव्हान फॉर आणि व्हाईल लूप्स व्यतिरिक्त अरेजवर लूपिंग करण्याचे इतर मार्ग आहेत. [forEach](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach), [for-of](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/for...of), आणि [map](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array/map) यांचा समावेश आहे. तुमचा अरेज लूप यापैकी कोणत्याही तंत्राचा वापर करून पुन्हा लिहा. ## व्याख्यानानंतरची क्विझ [व्याख्यानानंतरची क्विझ](https://ff-quizzes.netlify.app/web/quiz/14) ## पुनरावलोकन आणि स्व-अभ्यास जावास्क्रिप्टमधील अरेजमध्ये अनेक पद्धती (methods) असतात, ज्या डेटामध्ये बदल करण्यासाठी खूप उपयुक्त असतात. [या पद्धतींबद्दल वाचा](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array) आणि तुमच्या स्वतःच्या अरेजवर काही पद्धती (जसे की push, pop, slice आणि splice) वापरून पहा. ## असाइनमेंट [अरेजवर लूप करा](assignment.md) **अस्वीकरण**: हा दस्तऐवज AI भाषांतर सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) वापरून भाषांतरित करण्यात आला आहे. आम्ही अचूकतेसाठी प्रयत्नशील असलो तरी कृपया लक्षात ठेवा की स्वयंचलित भाषांतरे त्रुटी किंवा अचूकतेच्या अभावाने युक्त असू शकतात. मूळ भाषेतील दस्तऐवज हा अधिकृत स्रोत मानला जावा. महत्त्वाच्या माहितीसाठी, व्यावसायिक मानवी भाषांतराची शिफारस केली जाते. या भाषांतराचा वापर करून उद्भवलेल्या कोणत्याही गैरसमज किंवा चुकीच्या अर्थासाठी आम्ही जबाबदार राहणार नाही.