हाय एवरीवन एंड वेलकम ट अपना कॉलेज मेरा नाम है श्रद्धा खाप और आज के इस वन शॉट के अंदर हम पढ़ने वाले हैं कंप्लीट जावास्क्रिप्ट तो अगर हम एक ऐसे स्टूडेंट हैं जिसने आज तक जावास्क्रिप्ट के अंदर कोई कोड नहीं लिखा या इनफैक्ट किसी दूसरी लैंग्वेज के अंदर भी कोई कोडिंग नहीं की तो बिल्कुल भी घबराने वाली बात नहीं है क्योंकि इस ट्यूटोरियल के अंदर बहुत ही सिंपल तरीके से हम बिल्कुल बिगनर यानी जीरो लेवल से चीजों को स्टार्ट करेंगे और लास्ट तक जाते-जाते सीखेंगे कि किस तरीके से जावास्क्रिप्ट के अंदर हम कोडिंग कर सकते हैं इनफैक्ट जावास्क्रिप्ट को यूज करके हम कैसे गेम्स प्रोजेक्ट्स एंड वेबसाइट्स को बिल्ड कर सकते हैं तो इस जावास्क्रिप्ट के ट्यूटोरियल के अंदर हमने अपने टॉपिक्स को इन चैप्टर्स के अंदर डिवाइड किया है जिनके टाइम स्टंप्स आपको नीचे डिस्क्रिप्शन बॉक्स के अंदर मिल रहे होंगे अब इन चैप्टर्स के अंदर हम सिर्फ थ्योरी नहीं पढ़ेंगे थ्योरी के साथ-साथ हर एक इंपॉर्टेंट टॉपिक से रिलेटेड हम उसके प्रैक्टिस क्वेश्चंस को सॉल्व करेंगे साथ के साथ उन कॉन्सेप्ट्स को यूज़ करके हम अपने गेम्स को बिल्ड करेंगे जैसे हमारा स्टोन पेपर सिजर गेम हो गया एंड उसके साथ लास्ट तक जाते-जाते हम अपना एक फुली फंक्शनल करेंसी कन्वर्टर ऐप बना रहे होंगे इसके साथ में हर एक चैप्टर के जो स्लाइड्स एंड नोट्स हैं उनको डाउनलोड करने का लिंक लिंक भी आपको नीचे डिस्क्रिप्शन बॉक्स के अंदर दे दिया है उसे भी जाकर हम चाहे तो डाउनलोड कर सकते हैं अब जिन स्टूडेंट्स को नहीं पता जावास्क्रिप्ट पिछले 11 साल से टेक इंडस्ट्री के अंदर यूज होने वाली सबसे पॉपुलर लैंग्वेज है जिसके ऊपर आज के अपने ट्यूटोरियल के अंदर हम पूरी पकड़ बनाने वाले हैं तो इस ट्यूटोरियल को स्टार्ट करने के लिए सिर्फ एक ही चीज की हमें जरूरत है व्हिच इज अ विलिंग टू लर्न समथिंग न्यू तो शुरुआत करते हैं अपने जावास्क्रिप्ट के ट्यूटोरियल के साथ अब सबसे पहले हम बात करने वाले हैं कि जावास्क्रिप्ट एगजैक्टली होती क्या है जावास्क्रिप्ट सीखने से पहले ये जरूरी है समझना कि जावास्क्रिप्ट होती क्या है जावास्क्रिप्ट हमारे पास होती है एक प्रोग्रामिंग लैंग्वेज प्रोग्रामिंग लैंग्वेजेस क्या होती हैं जैसे डे टू डे बेसिस पर हम एक दूसरे से इंटरेक्ट करने के लिए बातचीत करने के लिए भाषाओं का यूज करते हैं हो सकता है हम अपने किसी दोस्त से हिंदी में बात कर रहे हो किसी से हम इंग्लिश में बात कर रहे हो किसी से फ्रेंच में बात कर रहे हो किसी से जर्मन में बात कर रहे हो तो बहुत सारी डिफरेंट डिफरेंट लैंग्वेजेस हैं जिनको हम यूज करते हैं ऐसे ही हमारे जो कंप्यूटर्स होते हैं हमारे जो लैपटॉप्स होते हैं हमारी जो मशीनस होती हैं इन्हें नॉर्मल लैंग्वेजेस समझ में नहीं आती इन्हें समझ में आती हैं प्रोग्रामिंग लैंग्वेजेस और बहुत सारी प्रोग्रामिंग लैंग्वेजेस होती हैं टेक वर्ल्ड के अंदर हमने जावा सुना होगा हमने c+ प सुना होगा हमने सी सुना होगा हमने पाइथन सुना होगा हमने जावास्क्रिप्ट सुना होगा तो जावास्क्रिप्ट इन्हीं में से एक ऐसी प्रोग्रामिंग लैंग्वेज है जो कंप्यूटर्स को मशीनस को समझ में आती है और इसे हम यूज करते हैं अपनी मशीनस को इंस्ट्रक्शंस देने के लिए एट दी एंड चाहे हमें वेबसाइट बनानी है चाहे हमें कंप्यूटर के अंदर कोई भी काम करना है व काम करने के लिए हमें अपना लॉजिक यूज़ करके कंप्यूटर को बताना पड़ेगा कि मुझे यह काम करके दे दो तो वो हम कौन सी भाषा में बताएंगे वो बताएंगे हम अपनी जावास्क्रिप्ट के अंदर व्हिच इज अ प्रोग्रामिंग लैंग्वेज तो हमारा जो कंप्यूटर होता है या अपना लैपटॉप इसे हम समझ सकते हैं कोई भी सिस्टम या मशीन वो क्या करता है हमसे कुछ इनपुट लेता है और इनपुट के अंदर हम क्या पास करते हैं इनपुट के अंदर हम उसे देते हैं कुछ इंस्ट्रक्शंस और ये इंस्ट्रक्शंस कैसे लिखी जाती हैं ये इंस्ट्रक्शंस दी जाती है इन द फॉर्म ऑफ कोड तो हम अपना जावास्क्रिप्ट का कुछ कोड लिख रहे होंगे कोड मतलब मतलब इंस्ट्रक्शंस यानी कुछ काम हम बता रहे होंगे अपने कंप्यूटर को और फिर कंप्यूटर आउटपुट की फॉर्म में हमें वह काम करके दे देगा वो काम बहुत सिंपल सी कैलकुलेशन भी हो सकती है हो सकता है हम 1 + 2 का आंसर ढूंढ रहे हो तो इनपुट के अंदर हम उसे वन दे दें हम उसे टू दे दें और बोल दें दोनों को प्लस कर दो और आउटपुट में वो हमें दे दे कि 1 + 2 हमारे पास थ्री होता है तो थ्री वो हमें प्रिंट करके दे दे इतना सिंपल सा भी आउटपुट हो सकता है और आउटपुट बहुत कॉम्प्लेक्टेड साइट हमें बना कर दे दे तो अगर हम बहुत सारी इंस्ट्रक्शन बहुत सारा कोड लिखते हैं तो उससे हम एक प्रॉपर वेबसाइट भी पूरी की पूरी जनरेट कर सकते हैं तो इट ऑल डिपेंड्स अपॉन द इनपुट कि हमने क्या इनपुट दिया है उसी के बेसिस पे हमारा सिस्टम हमारा कंप्यूटर हमें क्या आउटपुट रिटर्न करके देता है और किस तरीके से किस भाषा में हम अपना कोड लिखेंगे हम अपना कोड लिखेंगे जावास्क्रिप्ट के अंदर अब जब भी हम जावास्क्रिप्ट का कोड लिखते हैं तो उस कोड को रन करने के बहुत सारे डिफरेंट डिफरेंट तरीके होते हैं और कोड को रन करने का मतलब होता है कोड से आउटपुट निकालना तो उस कोड से आउटपुट निकालने के बहुत सारे तरीके होते हैं इनमें से सबसे सिंपल तरीका होता है अपने ब्राउजर के अंदर ही जावास्क्रिप्ट को लिखना ब्राउजर क्या होता है आप सभी ने मैंने राइट क्लिक किया या अगर आप मैक यूज़ कर रहे हैं तो आप डबल टैप कर सकते हैं और मैंने फिर सेलेक्ट किया अपना इंस्पेक्ट वाला ऑप्शन जैसे ही हम इंस्पेक्ट सिलेक्ट करते हैं इस तरीके की राइट साइड में बहुत बड़ी सी हमारे लिए विंडो ओपन होके आईगी जिसमें काफी सारी ऐसी चीजें हैं जो शुरुआत में हमें समझ में नहीं आएंगी यहां ऊपर ऑप्शंस होते हैं और इनमें से एक ऑप्शन होता है हमारे कंसोल का कंसोल हमारे ब्राउजर के अंदर ही जहां पर हम नॉर्मली डे टू डे बेसिस पे वेबसाइट्स खोलते आए हैं ब्राउजर के अंदर ही कंसोल उसका ऐसा हिस्सा होता है जिसके अंदर हम जावास्क्रिप्ट का कोड लिख सकते हैं और उसे वहीं के वहीं रन कर सकते हैं फॉर एग्जांपल ये स्क्रीन में एक बार क्लियर कर देती हूं मैंने कमांड प्स के प्रेस किया है अगर आप विंडोज यूज कर रहे हैं सो यू कैन प्रेस कंट्रोल प् के उससे हम अपने कंसोल को पूरा खाली कर सकते हैं क्लीन कर सकते हैं और यहां मैं एक छोटा सा कोड लिखने वाली हूं या छोटी सी इंस्ट्रक्शन इसको हम बोल सकते हैं यूजिंग जावास्क्रिप्ट मैंने लिखा अलर्ट और यहां मैंने लिखा अपना कॉलेज इस तरीके की मैंने एक स्टेटमेंट लिखी अब यहां पर अलर्ट का क्या मतलब है यह डबल कोड्स क्यों लगाए हैं यह सेमीकलन का क्या मतलब है हो सकता है फर्स्ट टाइम अगर हम कोडिंग सीख रहे हो तो ये लाइन हमें बहुत अजीब लग रही हो और हमें अभी डिटेल में भी नहीं जाना कि ये लाइन का क्या मतलब है किस तरीके से चीजें हो रही हैं मैं क्या करूंगी जैसे ही मैं एंटर प्रेस करूंगी इस तरीके का कुछ मेरे पेज पर आया ये क्या है ये बेसिकली एक अलर्ट है अलर्ट क्या होते हैं पॉप अप्स होते हैं हमारी स्क्रीन के ऊपर एकदम से अगर कोई मैसेज आ जाए उसे जावास्क्रिप्ट के अंदर क्रिएट करने के लिए हम अलर्ट लिख देते हैं और फिर उस मैसेज के अंदर क्या लिखा आ रहा है उस मैसेज के अंदर लिखा हुआ आ रहा है अपना कॉलेज इसको कर देंगे क्लिक ओके तो बेसिकली यह मैंने क्या किया जावास्क्रिप्ट के अंदर एक कोड लिखा और उस कोड को मेरे ब्राउजर ने ऑटोमेटिक रन कर दिया ऑटोमेटिक एग्जीक्यूट कर दिया इफ आई वांट आई कैन क्रिएट अ डिफरेंट मैसेज यहां पर अपना कॉलेज की जगह इफ आई डिसाइड टू राइट श्रद्धा खाप और मैंने जैसे ही एंटर किया मेरे लिए नया अलर्ट क्रिएट हुआ विद अ न्यू नेम इसको भी ओके क्रिएट कर सकते हैं और यहां पर हम स्टार्ट करने वाले हैं क्योंकि अपनी जावास्क्रिप्ट की सीरीज तो यहां हम लिख सकते हैं हेलो जेएस एंटर किया तो इस बार हमारे पास मैसेज आ गया हेलो जेएस तो ये जो तीनों लाइंस है ये जावास्क्रिप्ट के कोड का पार्ट है दिस इज अ जावास्क्रिप्ट लाइन दिस लाइन इज रिटन इन जावास्क्रिप्ट ये भी जावास्क्रिप्ट में लिखी है ये भी जावास्क्रिप्ट में लिखी है तो ये ऐसा जावास्क्रिप्ट कोड है जो डायरेक्टली हमारे ब्राउजर के अंदर रन कर पा रहा है तो ये हमारी फर्स्ट लाइन है जिसको हमने जावास्क्रिप्ट के अंदर एग्जीक्यूट किया है अब ये तो हो गया सबसे सिंपल तरीका जावास्क्रिप्ट को एग्जीक्यूट करने का यानी हमने ब्राउजर के अंदर ही कुछ ना कुछ कोड वहां पर लिख दिया बट जनरली जब हम जावास्क्रिप्ट को यूज़ करेंगे तो हम उसे सारे के सारे कोड को ब्राउजर के ऊपर नहीं लिख सकते क्योंकि एट दी एंड जैसे ही आप इस ब्राउजर को रिफ्रेश करोगे ब्राउजर को रिफ्रेश करने का मतलब है जैसे ही ये रिफ्रेश वाला जो बटन होता है इसको हमने प्रेस किया या कंट्रोल + r हम जैसे ही प्रेस कर देते हैं हमारा कंसोल विंडो खाली हो जाता है और दोबारा से उसमें ये कुछ बाय डिफॉल्ट मैसेजेस वार्निंग्स वगैरह आने लगते हैं ये मैसेजेस हमारे जावास्क्रिप्ट से रिलेटेड नहीं है इनको ऑटोमेटिक google2 कर रहा है स्क्रीन को हम चाहे कभी भी खाली कर सकते हैं तो बेसिकली कंसोल के ऊपर जावास्क्रिप्ट लिखना टेंपरेरी तरीका होता है पर हां कंसोल विंडो के ऊपर भी जावास्क्रिप्ट लिखी जा सकती है इनफैक्ट हम बहुत सारे कॉन्सेप्ट्स यहीं पर लिखकर सीख रहे होंगे पर मेजर तरीका होता है जावास्क्रिप्ट को लिखने का इन अ कोड एडिटर अब कोड एडिटर क्या होता है हमारे पास बेसिकली मार्केट के अंदर बहुत सारे डिफरेंट डिफरेंट कोड एडिटर्स अवेलेबल होते हैं एंड कोड एडिटर इज लाइक अ नोटबुक अब जैसे अभी तक पूरी स्कूल लाइफ के अंदर या पूरी कॉलेज लाइफ के अंदर जितना भी काम हमने किया होता है जितनी भी पढ़ाई की होती है उस सबके नोट्स हम कहां बनाते हैं नोटबुक के अंदर बनाते हैं पेन को यूज़ करके बनाते हैं लेकिन लेकिन कोडिंग के अंदर हमारे जो नोट्स होते हैं या पूरी हमें जो पढ़ाई करनी होती है वो हम नोटबुक के ऊपर नहीं करते उसके लिए हमारे पास डिजिटल नोटबुक्स होती हैं जिनको हम कहते हैं अपना कोड एडिटर्स और ऐसे बहुत सारे डिफरेंट डिफरेंट कोड एडिटर्स अवेलेबल है मार्केट के अंदर आप चले जाओगे आपके पास विम है आपके पास सब्लाइम है और भी काफी सारे पॉपुलर ऑप्शंस है और इसमें से एक जो सबसे ज्यादा पॉपुलर ऑप्शन है इंडस्ट्री के अंदर उसे हम यूज़ कर रहे होंगे व्हिच इज कॉल्ड वीएस कोड इसे विजुअल स्टूडियो कोड भी कहते हैं और विजुअल स्टूडियो कोड को यूज़ करने के पीछे बहुत सारे रीजंस हैं सबसे पहला सबसे इंपॉर्टेंट रीजन इट इज फ्री फ्रीली हम इसको डाउनलोड कर सकते हैं कोई लाइसेंस की जरूरत नहीं है सेकंड रीज़न इट इज वेरी पॉपुलर इन द इंडस्ट्री चाहे कोई स्टूडेंट कोडिंग कर रहा हो चाहे कोई वर्किंग प्रोफेशनल कोडिंग कर रहा हो बहुत सारे लोग इनफैक्ट वन ऑफ द लार्जेस्ट नंबर ऑफ डेवलपर्स यूज विजुअल स्टूडियो कोड एज देयर प्राइमरी मीडियम ऑफ डूइंग कोडिंग तीसरा रीज़न है कि आज हो सकता है विजुअल स्टूडियो कोड के ऊपर हम सिर्फ जावास्क्रिप्ट का कोड लिख रहे हो पर कल को जाकर अगर आपको जावा का कोड लिखना है आपको c+ का कोड लिखना है आपको सी का कोड लिखना है पाइथन का कोड लिखना है मैक्सिमम जितनी भी हमारी मेजॉरिटी यूज्ड होने वाली लैंग्वेजेस हैं उन सबके कोड हम वीएस कोड के ऊपर लिख सकते हैं एग्जीक्यूट कर सकते हैं तो अगर आपने लाइफ में एक बार इसको इंस्टॉल कर लिया तो दोबारा हमें इसको इंस्टॉल करने की जरूरत नहीं पड़ेगी ना ही किसी दूसरे एडिटर की जरूरत पड़ेगी क्योंकि मैक्सिमम काम हमारे इसी कोड एडिटर के ऊपर हो जाते हैं तो इट इज वन ऑफ द बेस्ट एंड आई रिकमेंड इट टू यू चाहे आप जावास्क्रिप्ट पढ़ रहे हो चाहे आप वेब डेवलपमेंट कर रहे हो चाहे आप डीए से पढ़ रहे हो चाहे आप कुछ भी पढ़ रहे हो वीएस कोड जो है काफी पॉपुलर काफी बढ़िया टूल है एंड इसे सबसे पहले हम इंस्टॉल करने वाले हैं एंड आल्सो इट इ अ कोड एडिटर बिल्ट बाय microsoft.com डनलोड लोड अब इसमें काफी सारे ऑप्शन आ गए हैं अब आप विज मशीन पर हैं windows7 8 10 11 पर तो यहां पे आप अपने सिस्टम के हिसाब से कि 64 बिट सिस्टम है तो कौन सा डाउनलोड करना है 32 बिट है तो कौन सा डाउनलोड करना है मोस्टली लोगों का जो है 64 बिट सिस्टम होता है तो इसको आप यहां पे क्लिक करके डाउनलोड कर सकते हैं अगर आप इन सारे के सारे चेक बॉक्सेस को टिक कर देना है जैसे ही टिक करेंगे हमारा विजुअल स्टूडियो कोड पूरी तरह इंस्टॉल हो जाएगा और इसको अब हम फर्स्ट टाइम खोल सकते हैं तो फाइनली इंस्टॉलेशन को हमने कंप्लीट कर लिया है और नेक्स्ट चीज जिसके साथ हम स्टार्ट करेंगे जावास्क्रिप्ट के अंदर सबसे बेसिक चीज वो होती है console.log console.log ये एक ऐसी कमांड है ये एक ऐसी स्टेटमेंट है ये एक ऐसा पीस ऑफ कोड है जिसका काम होता है किसी भी चीज को प्रिंट करवाना कंसोल के ऊपर कंसोल हमने देख लिया कि क्या होता है कंसोल हमारे ब्राउजर का वो वाला हिस्सा होता है जिसके ऊपर हमारी जावास्क्रिप्ट रन करती है तो हम ब्राउजर के किसी भी टैब पे अगर जाके इंस्पेक्ट करेंगे तो हम अपने कंसोल पर आ सकते हैं कल + k से हम स्क्रीन को खाली कर सकते हैं जो भी चीजें हैं सारी गायब हो जाएंगी और बेसिकली console.log इज यूज्ड टू लॉग लॉग का मतलब होता है कुछ भी चीज को प्रिंट करवाना लॉग अ मैसेज टू द कंसोल तो अगर हमने कसोल डलॉग करके फिर हम क्या लिखते हैं फिर हम अपने पैरेंस लगाते हैं पैरेंस यानी यह हमारे जो कर्ली कर्ली नहीं इसको हम कर्वी ब्रैकेट्स कहेंगे इस तरीके के जो हमारे नॉर्मल ब्रैकेट्स होते हैं उसके अंदर अगर हमने डबल कोट्स या फिर सिंगल कोट के अंदर कुछ भी लिख दिया तो फिर वो चीज हमारी स्क्रीन के ऊपर जाकर प्रिंट हो जाएगी फॉर एग्जांपल अगर हम लिखते हैं कसोल डॉट लॉग यानी कंसोल के ऊपर लॉग कर दो क्या लॉग कर दो मुझे अपना कॉलेज ये मेरा मैसेज है जिसको मुझे प्रिंट करवाना है मैसेज क्या है मैसेज है अपना कॉलेज इस मैसेज को मैंने डबल कोट्स के अंदर लिख दिया और लास्ट में मैंने एक सेमीकलन लगाया है सेमीकलन का वही मतलब होता है कोडिंग के अंदर जो इंग्लिश के अंदर फुल स्टॉप का होता है और हिंदी के अंदर पूर्ण विराम का होता है बेसिकली अगर आपको एक सेंटेंस को खत्म करना होता है तो उसके लिए हम सेमीकलन को यूज़ करते हैं सेमीकलन मतलब मेरा एक सेंटेंस मेरी एक लाइन खत्म हो गई जैसे ही एंटर करेंगे वैसे ही क्या होगा मेरे लिए अपना कॉलेज प्रिंट होकर आ जाएगा अभी ये जो अनडिफाइंड मुझे दिखाई दे रहा है इसको इग्नोर करना है ये अभी हमारे काम की चीज नहीं है मेरे लिए क्या इंपॉर्टेंट चीज है ये लाइन जहां पर मेरा ये मैसेज जिसको मुझे प्रिंट करवाना था य हां पर आकर प्रिंट हो गया उसी तरीके से अगर आपने पहले कोई कोड ऑलरेडी लिखा हुआ है उसको अब अगर आप दोबारा दिखाना चाहते हैं अपने कंसोल विंडो के अंदर तो एरो कीज जो होती है हमारी अप और डाउन वाली एरो कीज उसमें हम अप वाली एरो की प्रेस करते हैं तो पुराना कोड हमारे लिए वापस आ जाता है अगर हम ब्राउजर के ऊपर ये सेमीकलन नहीं लगाएंगे तब भी हमारा कोड वैसे ही रन करेगा बट एज अ गुड प्रैक्टिस हमें हमेशा एक लाइन के बाद सेमीकलन को लगाना चाहिए अब अपना कॉलेज को मैंने अगर सिंगल कोड्स के अंदर लिखा होता तब भी कोई प्रॉल प्रॉब्लम नहीं थी हम चाहे तो डबल कोट्स के अंदर लिख सकते हैं सिंगल कोट्स के अंदर लिख सकते हैं अगर अपना कॉलेज की जगह मैंने कोई और मैसेज दिया होता फॉर एग्जांपल आई वुड हैव गिवन आई लव जेएस एंटर तो वही सेम मैसेज हमारे लिए रिले होकर आ जाता अगर आप चाहे तो यहां पर आप अपना नाम प्रिंट करवा सकते हैं जैसे फॉर एग्जांपल मैंने अपना नाम प्रिंट करवाया आई एम ट्राइम टू प्रिंट श्रद्धा के एंटर किया तो ये मेरे लिए मेरा नाम प्रिंट होकर आ गया तो इस तरीके से जिस भी चीज को अपने कंसोल विंडो के ऊपर हम प्रिंट करवाना चाहते हैं उसे हम लिखते हैं console.log के अंदर सो दिस इज बेसिकली आवर फर्स्ट जावास्क्रिप्ट प्रोग्राम अब यहां पर तो हमने लिख दिया पर वीएस कोड का क्या तो हम फाइनली इसी सेम काम को करने वाले हैं यूजिंग विजुअल स्टूडियो कोड जब हम विजुअल स्टूडियो कोड को खोलते हैं तो इस तरीके से आपकी विंडो आपको खुली हुई दिखाई देगी हो सकता है रिसेंट सेक्शन के अंदर अगर आपने फर्स्ट टाइम वीएस कोड इंस्टॉल किया आपको कुछ ना दिखाई दे कोई टेंशन वाली बात नहीं है यहां पर हमारे पास जो न्यू फाइल का ऑप्शन आएगा हम इस पर क्लिक करेंगे और अपने लिए एक नई फाइल ब बनाएंगे नई फाइल में आई एम गोइंग टू चूज लेट्स सपोज अ टेक्स्ट फाइल अब ये जो टेक्स्ट फाइल है इसे क्रॉस कर देते हैं और ये जो लेफ्ट वाला हमारा बटन है ये आइकन जो मुझे दिख रहा है व्हिच इज़ द एक्सप्लोरर आइकन इसके ऊपर क्लिक करेंगे तो यहां पर हमें दिखाई देगा कि अभी हमारे लिए कोई फोल्डर खुला हुआ नहीं है हम चाहें तो इस फाइल को सेव कर सकते हैं सेव करने के लिए या तो फाइल में जाके वी कैन क्लिक ऑन सेव सेव एज नहीं तो हम कंट्रोल s प्रेस कर सकते हैं और इस फाइल को फाइनली हम सेव करने वाले हैं सेव करने के लिए इसे डेस्कटॉप के ऊपर एक न्यू फोल्डर हम बना लेते हैं इसे कहने वाले हैं हम जावास्क्रिप्ट और जावास्क्रिप्ट फोल्डर के अंदर हम इस नई फाइल को क्रिएट करेंगे और इसको क्या नाम देंगे इसे हम नाम देंगे फर्स्ट ड जए अब ये फड जए जब हम इसे नाम दे रहे हैं सेव कर देते हैं तो अब हमारी फाइल का नाम हो गया फड जए और ये जावास्क्रिप्ट नाम के फोल्डर के अंदर हमारे पास स्टोर हो गई जनरली वीएस कोड हमें ऊपर ही दिखा देता है कि हमारी फाइल का पूरा पाथ क्या है कि हमारी फाइल कहां पे जाके स्टोर हुई है अब अपनी फाइल को हमने क्या नाम दिया है अपनी फाइल को जावास्क्रिप्ट फाइल को हमने नाम दिया है फर्स्ट ड जए यहां पर हम सोच सकते हैं कि हमने इसे ड txt.gz होता जावा की फाइल होती तो डॉट जावा होता पाइथन की फाइल होती डॉट पा होता तो इस तरीके से किसी भी और अगर वो लैंग्वेज की फाइल होती तो एक्सटेंशन अलग होता तो एक्सटेंशन देखकर ही हमें पता चल जाता है कि इस फाइल के अंदर कौन सा कोड है जिसको हमें लिखना पड़ेगा अब इस जावास्क्रिप्ट फाइल को तो हमने क्रिएट कर लिया इसके साथ में व्हाट वी कैन डू इज अपने फाइल वाले ऑप्शन में जाके हम ओपन कर सकते हैं एक फोल्डर और फोल्डर ओपन करने के लिए हम क्या करेंगे इसी जावास्क्रिप्ट यानी पूरे फोल्डर को हम ओपन कर लेंगे तो क्लिक कर लिया हमने इस तरीके से हमारे पास ये फोल्डर ओपन हो हो गया कोई अगर वार्निंग्स आ रही है तो उनको आप क्रॉस कर सकते हो तो अब हमें एक्सप्लोरर में यानी इस बटन को क्लिक करके अपना फोल्डर दिखाई दे रहा है जावास्क्रिप्ट और उसके नीचे हमें अपनी फाइल दिखाई दे रही है फड जए जो भी कंप्लीट खाली है अब अपनी इस 1js के अंदर हम अपना पहला जावास्क्रिप्ट का कोड लिख सकते हैं हमारा कोड था console.log और इसके अंदर हम प्रिंट करवा सकते हैं अपना कॉलेज एंड यहां हम लगा देंगे सेमीकलन अब इस लाइन का मतलब हमें ऑलरेडी पता है इसका मतलब है कंसोल के ऊपर प्रिंट करवाना चाहते हैं हम अपना कॉलेज और ये हमारी एक ही लाइन ऑफ कोड है इसको सेव कर लेते हैं यहां तो हमने एक जावास्क्रिप्ट की फाइल बनाई और इसको सेव भी कर लिया और यह कोड हमेशा परमानेंटली हमारे कंप्यूटर में रहेगा जब तक जाके हम इस फाइल को डिलीट नहीं करते ब्राउजर की तरह इसे रिफ्रेश करके हम गायब नहीं कर सकते पर अभी इस कोड को इस ब्राउजर के ऊपर देख पाना पॉसिबल नहीं है क्योंकि जावास्क्रिप्ट का कोड विजुअल स्टूडियो कोड के अंदर लिखा हुआ है ब्राउजर अलग ही रन कर रहा है तो दोनों को हम जोड़ कैसे सकते हैं कैसे मैं इस चीज को प्रिंट करवाऊं अपनी इस ब्राउजर विंडो के ऊपर तो जावा स्क्रिप्ट को ब्राउजर के साथ कनेक्ट करने के लिए हमें अलग से एक html5 किसी वेबसाइट पे बटन कहां पे दिखाई देना चाहिए किसी वेबसाइट पे हमारा इनपुट बॉक्स कहां पे दिखाई देना चाहिए अगर यह हमारा इसपे सर्च बार कैसा दिखाई देना चाहिए यह ऑप्शंस कहां-कहां दिखाई देने चाहिए इस तरीके से इंफॉर्मेशन कैसे दिखनी चाहिए वह काम बताता है हमारे लिए html5 तो इसीलिए जावास्क्रिप्ट को भी ब्राउजर पे रन करने से पहले हम एक एक्स्ट्रा एटीएमएल फाइल बनानी पड़ेगी अगर आपको पहले से एचटीएमएल आता है तो आपको कोई परेशानी नहीं होगी बहुत सिंपल सा हम कोड लिखने वाले हैं पर अगर आपको एचटीएमएल नहीं भी आता है तो कोई बात नहीं साथ के साथ मैं सारी चीजें आपको एक्सप्लेन करती रहूंगी हम इस न्यू फाइल वाले आइकन के ऊपर क्लिक करेंगे और हम एक और नई फाइल बनाएंगे जो हमारी html5 होगी इस फाइल को हम कुछ भी नाम दे सकते हैं इस फाइल को हम फर्ड html5 को जो मेन html5 होती है उसको इंडेक्स नाम दे देते हैं एंटर कर दिया और यहां पे एक्सटेंशन क्या है ड html4 हाइपरटेक्स्ट मार्कअप लैंग्वेज इसके ज्यादा डिटेल में अभी हम नहीं जाएंगे एटीएमएल का ऑलरेडी हमने वन चार्ट बनाया हुआ है बट मैक्सिमम चीजें हम जावास्क्रिप्ट करते करते ही सीख लेंगे अब एटीएमएल के लिए वीएस कोड हमें एक बहुत ही बढ़िया खूबसूरत चीज देता है वो होता है बॉयलर प्लेट कोड यानी ऑटोमेटिक बहुत सारा एचटीएमएल कोड हमारे लिए जनरेट कर देता है विजुअल स्टूडियो कोड कैसे हम प्रेस करेंगे शिफ्ट और एक्सक्लेमेशन जैसे ही प्रेस किया हमारे पास ये कुछ ऑप्शंस आ गए और जैसे ही इस ऑप्शन के ऊपर हम क्लिक कर देंगे या एंटर कर देंगे वैसे ही हमारे लिए यह कोड जनरेट होके आ गया अभी इस कोड में क्या किस चीज का मतलब है कुछ समझने की हमें जरूरत नहीं है हम सीधा कर देंगे सेव इसे इस फाइल को हमने सेव कर दिया है प्लस इसके अंदर हम एक और एक्स्ट्रा लाइन लिखने वाले हैं और इसे हम कह देते हैं स्क्रिप्ट तो बेसिकली यहां हम दो चीजें करने की कोशिश कर रहे हैं हमने एक html5 तो बनाई ही है इस कोड लिखते हैं तो अब हम html4 इज इक्वल टू डबल कोड्स और उसके अंदर हम अपनी फाइल का नाम लिख देंगे फड जए जो भी हमारी फाइल का नाम है और यह हमेशा याद रखना है यह 1js हमसे सिर्फ इसलिए लिख पा रहे हैं क्योंकि दोनों फाइल्स एक ही फोल्डर के अंदर हैं और अगर हम चाहते हैं कि उस फोल्डर को हम देखना चाहते हैं तो आई कैन कम टू माय डेस्कटॉप डेस्कटॉप के ऊपर ये जावास्क्रिप्ट हमारा फोल्डर है और इसके अंदर ये दोनों फाइल्स मुझे दिखाई दे रही हैं इस तरीके से आपके भी डेस्कटॉप के ऊपर आपको दोनों फाइल्स दिखाई दे रही होंगी जहां भी आपने सेव किया होगा तो ये स्क्रिप्ट वाली एक्स्ट्रा लाइन जो है इसको हमने ऐड कर दिया इसको बॉडी वाला ये जो बॉडी लिखा हुआ है इसके जस्ट बाद आपको ऐड करना है और हमने इसे कर दिया सेव अब इस फाइल को हम कर सकते हैं परमानेंटली क्लोज अब क्या होगा अब यह वाली जो जावास्क्रिप्ट है html5 के ऊपर जाना है और इस पर हम करेंगे डबल क्लिक जैसे ही डबल क्लिक किया यह फाइल हमारे इस ब्राउजर में आकर खुल गई और यहां पे अभी आपको सिर्फ एक वाइट स्क्रीन दिखाई देगी कुछ और दिखाई नहीं देगा क्यों नहीं दिखाई दे रहा क्योंकि अभी यूजर्स के अंदर श्रद्धा खपरा फोल्डर के अंदर डेस्कटॉप के अंदर जावास्क्रिप्ट के अंदर इक्सड html5 है जिसको मैंने खोला है अब इसके ऊपर डबल क्लिक करके हम इंस्पेक्ट करेंगे या राइट क्लिक करके इंस्पेक्ट करेंगे और कंसोल में जाएंगे तो कंसोल में ऑलरेडी आपके लिए एक मैसेज पहले से लिखा होगा जो आपको वेलकम कर रहा है व्हिच सेज अपना कॉलेज एंड यहां पे आपकी फाइल का नाम भी आ रहा होगा फर्स्ट ड जावास्क्रिप्ट कौन सी लाइन लाइन नंबर वन और आप अपने कोड को जाके देखोगे कोड हमारा कौन सी लाइन के अंदर लिखा हुआ है लाइन नंबर वन के ऊपर कोड लिखा हुआ है और वो कोड कह रहा है अपना कॉलेज इन फैक्ट हम यहां लिख सकते हैं वेलकम टू अपना कॉलेज एंड फिर एक एक्सक्लेमेशन यानी डबल कोट्स के अंदर कुछ भी चीज लिखी जा सकती है इसको सेव किया वापस आए और यहां से रिफ्रेश किया या आप कंट्रोल प् आर भी प्रेस कर सकते हैं तो वेलकम टू अपना कॉलेज हमारा मैसेज हमारे लिए अपडेट हो गया तो यहां से हमें कन्फर्मेशन मिल गया यहां से हमें दिल की तसल्ली हो गई कि ठीक है हमारा जो ये जावास्क्रिप्ट था अब सिर्फ कंसोल विंडो के ऊपर नॉर्मली रन नहीं कर रहा मुझे यहां से अलग से कसोल डलॉग लिखने की जरूरत नहीं पड़ रही अब क्या हो रहा है मेरी फाइल के अंदर जो मैंने कोड लिखा है वो डायरेक्टली मेरे ब्राउजर के साथ लिंक हो गया है अगर आप चाहे तो डायरेक्टली आप बिना एटीएमएल फाइल के भी कोड को एग्जीक्यूट कर सकते हैं कैसे एग्जीक्यूट कर सकते हैं किसी भी टैब को खोल के इंस्पेक्ट में जाके कंसोल में जाना है और क्लियर करके कंसोल को यहां अपना कोड लिखना स्टार्ट करना है पर उससे भी एक और बेटर तरीका होगा कि आपने अब जावास्क्रिप्ट फाइल के अंदर अपना कोड लिख दिया और यह कोड परमानेंट है इसको डिलीट नहीं कर सकते डिलीट तभी करेंगे जब हम अपनी फाइल को डिलीट करेंगे फाइल के अंदर कुछ चेंजेज करेंगे सो दिस वाज आवर फर्स्ट जावास्क्रिप्ट कोड इसके अंदर चाहे तो हम कुछ-कुछ चेंजेज कर सकते हैं फॉर एग्जांपल इस चीज को प्रिंट करवाने के बाद हम एक और लाइन प्रिंट करवा सकते हैं इसमें हम अपना नाम लिख सकते हैं मैंने अपना नाम लिखा है आप यहां पे अपना नाम लिख सकते हैं लेट्स सेव इट एंड यहां कर देंगे रिफ्रेश जैसे ही रिफ्रेश किया इस बार सेकंड लाइन प्रिंट होके आ गई जिसमें हमारा नाम लिखा हुआ है इसके अलावा अगर हम कुछ और मैसेज है जिसे प्रिंट करवाना चाहते हैं फॉर एग्जांपल आई लव जावा स्क्रिप्ट तो इस तरीके से सेव कर सकते हैं रिफ्रेश किया तो हमारा थर्ड ड मैसेज हमारे लिए प्रिंट होकर आ गया सारे मैसेजेस अलग-अलग लाइन में प्रिंट होकर आ रहे हैं कसोल डलॉग हमेशा नेक्स्ट लाइन के अंदर आपको मैसेज प्रिंट करके देता है सो दिस वाज आवर फर्स्ट जावास्क्रिप्ट कोड एंड अ बिग कांग्रेचुलेशन टू ऑल ऑफ यू क्योंकि एज अ बिगनर एज अ बिगनर प्रोग्रामर विजुअल स्टूडियो कोड जैसे टूल को इंस्टॉल करना साथ के साथ पहली जो चीज है प्रोग्रामिंग के अंदर कर पाना वो अपने आप में एक बड़ी अचीवमेंट होती है वो अपने आप में एक बड़ा स्टेप होता है और आप सभी ने वो चीज अचीव कर ली है तो कांग्रेचुलेशन फॉर राइटिंग योर फर्स्ट कोड इन जावास्क्रिप्ट अब नेक्स्ट टॉपिक जिसे हम पढ़ने वाले हैं जावास्क्रिप्ट के अंदर इसका नाम है वेरिएबल वेरिएबल आर कंटेनर्स फॉर डाटा कंटेनर्स कहने का क्या मतलब है अपने घर में आपने बहुत सारे डिफरेंट डिफरेंट डब्बे देखे होंगे हमारे घर पे रसोइयों में बहुत सारे मसाले के डब्बे रखे रहते हैं एक नमक का डब्बा होता है एक जीरा का डब्बा होता है एक मिर्ची का डब्बा होता है इस तरीके से बहुत सारे कंटेनर्स होते हैं जिनके अंदर अलग-अलग चीजें स्टोर्ड होती हैं अब यही जो कंटेनर्स होते हैं इन्हीं के अंदर अगर हम अपना डिजिटल डाटा स्टोर करना स्टार्ट कर दें किसी भी लैंग्वेज के अंदर तो इन्हीं कंटेनर्स को हम अपनी वेरिएबल कह देते हैं इसको एग्जांपल के थ्रू समझते हैं हमने सिक्सथ सेवंथ एथ क्लास में मैथ के अंदर वेरिएबल नाम की एक चीज ऑलरेडी पढ़ी होगी फॉर एग्जांपल हम किसी भी सर्कल को अगर पढ़ते थे मैथ के अंदर हम पढ़ते थे कि हमारे पास सर्कल होता है अब सर्कल की कोई ना कोई रेडियस होती है इसे हम रड बोल देते हैं इसे हम रेडियस बोल देते हैं कभी-कभार इसको हम r भी ले लेते हैं अब हो सकता है कोई छोटा सर्कल है तो उसकी रेडियस हो सकता है छोटी हो फॉर एग्जांपल लेट्स अजूम द रेडियस टू बी इक्वल टू 14 और अगर हमने एक बड़ा सर्कल बना दिया तो इस बड़े सर्किल की रेडियस क्या होगी इस बड़े सर्किल की रेडियस और बड़ी होगी तो इसकी जो रेडियस वैल्यू है वह हो सकता है इट कैन बी इक्वल टू 28 कुछ भी डिफरेंस हो सकता है तो इस तरीके से ये जो r है या यहां पर इसको हम कह दें r = 28 अब ये जो r है इवन दो इसका मतलब रेडियस है इसके अंदर रेडियस की ही वैल्यू स्टोर्ड है बट इसकी वैल्यू क्या है टाइम के साथ चेंज हो सकती है और अगर मुझे कभी भी किसी सर्कल का एरिया निकालना हो तो मुझे लिखना पड़ेगा p स् ये हमारा फॉर्मूला होता था मैथ के अंदर छोटी क्लास के अंदर पर हमें इस फॉर्मूले से ज्यादा मतलब नहीं है हम बस बेसिक आईडिया लेने की कोशिश कर रहे हैं कि मैथ के अंदर जैसे रेडियस निकालने के लिए पा स् होता था अगर कोई रेक्टेंगल है इसकी एक साइड a है दूसरी साइड b है इसका एरिया निकालने के लिए a मल्टीप्ला बा b होता था तो रेक्टेंगल चाहे छोटे साइज का हो चाहे बड़े साइज का फॉर्मूला तो सेम ही रहेगा a * बा b अब ये जो a और b है इनके अंदर चाहे कोई भी वैल्यू हो पर फॉर्मूला सेम रहेगा तो इन a और b को हम वेरिएबल कहते थे मैथ के अंदर उसी तरीके से ये जो रेडियस है छोटे सर्कल के लिए छोटी रेडियस होगी बड़े सर्कल के लिए बड़ी रेडियस होगी पर ये जो r है इसकी वैल्यू चेंज होती रहती है और इसीलिए इसे हम वेरिएबल कहते हैं वेरिएबल यानी ऐसा कंटेनर जिसके अंदर कोई डाटा स्टोर्ड है यहां पे डेटा क्या है यहां पे डेटा है 14 यहां पे डेटा क्या है यहां पे डेटा है 28 कोई डेटा स्टोर्ड है और वो डेटा चेंज हो सकता है वो डेटा वेरी हो सकता है तो इंग्लिश के अंदर वेरिएबल का मतलब होता है जो चीज वेरी हो सके जो चीज चेंज हो सके तो वैसे ही हमारी जब भी हम कोई वेबसाइट बिल्ड करते हैं वेबसाइट के अंदर बहुत सारा डाटा है जो हमें स्टोर कराना पड़ सकता है फॉर एग्जांपल अगर हम गो टू द flipkart-com का नाम क्या है इस आइटम का कितना प्राइस है इस आइटम के ऊपर अभी कोई ऑफर चल रहा है क्या 65 का 50 पर का किसी भी चीज का फाइनल प्राइस क्या आएगा डिलीवरी डेट क्या है यह सारा का सारा क्या होता है ये सारा का सारा डाटा होता है और ये चेंज होता रहता है हो सकता है आज दिवाली का ऑफर चल रहा हो 50 पर ऑफर हो कल को ऑफर ना हो तो कल को प्राइस और डाउन हो जाए प्राइस अप हो जाए कुछ भी हो सकता है तो डिफरेंट डिफरेंट डाटा को स्टोर कराने के लिए हमें जावास्क्रिप्ट के अंदर कंटेनर्स चाहिए होते हैं और इन्हीं कंटेनर्स को हम वेरिएबल कहते हैं फॉर एग्जांपल मुझे डटा स्टोर कराना है रेडियस तो मेरी कंप्यूटर की जो मेमोरी होगी लैपटॉप की जो मेमोरी होगी उसे हम इस तरीके से विजुलाइज कर सकते हैं इस मेमरी के अंदर अलग-अलग हमारे पास एरिया होते हैं जो रिजर्व्ड होते हैं और इन एरियाज का साइज छोटा भी हो सकता है बड़ा भी हो सकता है डिपेंडिंग अपॉन हम किस तरीके का डाटा स्टोर करा रहे हैं और यह जो एरिया होते हैं इन्हें हम अपनी मेमोरी लोकेशंस कहते हैं हर मेमोरी लोकेशन के ऊपर कुछ ना कुछ डाटा स्टोर हो सकता है और इसके लिए फॉर एग्जांपल हमने एक मेमोरी लोकेशन ली ये और इसके अंदर हमने डाटा स्टोर करा दिया 14 और इस लोकेशन को हमने नाम दे दिया रेडियस तो हमारा वेरिएबल का नाम क्या होगा हमारे वेरिएबल का भी नाम होगा हमारे पास रेडियस इसको हम ऐसे समझ सकते हैं कि हमारे पास लैंड तो होती है हर किसी ने लैंड देखी हुई है तो लैंड के अगर हमने प्लॉट काट दिए और हर प्लॉट के ऊपर हमने एक घर बना दिया अब घर के अंदर कोई ना कोई तो रह रहा हो होगा और हर घर का अपना एड्रेस होगा तो जो घर के अंदर रह रहा है उसे हम क्या कहेंगे उसे हम वैल्यू कहेंगे और वो प्लॉट क्या होगा वो प्लॉट हमारी मेमोरी लोकेशन होगी और घर का नाम क्या होगा घर का एड्रेस क्या होगा घर का एड्रेस होगा हमारे वेरिएबल का नाम तो मेमोरी लोकेशन का जो एड्रेस होता है उसे हमने क्या दे दिया एक नाम दे दिया और उसी घर के नाम को हम कह देते हैं अपना वेरिएबल कि ये जो कंटेनर है ये जो प्लॉट आपने डिवाइड किया हुआ है इसका नाम है रेडियस इसे आज से हम रेडियस कहेंगे कल को हो सकता है रेडियस की वैल्यू 28 हो जाए तो यहां पर इंटरनल वैल्यू चेंज हो जाए घर में रह ने वाला चेंज हो सकता है पर घर का प्लॉट का नाम हमेशा हमारा सेम रह सकता है उसी तरीके से फॉर एग्जांपल हमें अपनी एज का डाटा स्टोर कराना है आज हो सकता है हमारी जो एज हो उसकी वैल्यू हो सकता है 24 के इक्वल हो फॉर एग्जांपल इट इज इक्वल टू 24 तो यहां पर अगर हमें नया वेरिएबल बनाना पड़ेगा तो उसके लिए हम क्या करेंगे वैल्यू के अंदर स्टोर करवाएंगे 24 और वेरिएबल को क्या नाम देंगे वेरिएबल को हम नाम दे सकते हैं एज तो ये हमारा नया वेरिएबल बन जाएगा एज जिसके अंदर वैल्यू स्टोर्ड है 24 इसी तरीके से हम कोई नाम भी स्टोर करवा सकते हैं फॉर एग्जांपल हमें नाम स्टोर कराना है टोनी स्टार्क तो हम क्या करेंगे यहां लिख देंगे नेम इज इक्वल टू और फिर डबल कोट्स के अंदर जो भी टेक्स्ट होता है टेक्स्ट यानी जिसके अंदर लेटर्स यूज़ हो गए ए बी सीडी यूज़ हो गया उस इंफॉर्मेशन को स्टोर करवाने के लिए हम हमेशा डबल कोट्स या सिंगल कोट्स को यूज़ करेंगे और इन्हें प्रोग्रामिंग के अंदर हम स्ट्रिंग्स कहते हैं स्ट्रिंग्स क्या होती हैं उनके बारे में हम बाद में डिटेल में पढ़ेंगे पर बेसिकली कुछ भी टेक्चुअल इंफॉर्मेशन स्ट्रिंग्स की फॉर्म में हम स्टोर कराते हैं और यहां मैंने लिख दिया टोनी स्टार्क तो मेमोरी के अंदर क्या होगा मेमोरी के अंदर एक नया वेरिएबल बन जाएगा जिसका नाम होगा नेम और जिसके अंदर वैल्यू क्या स्टोर्ड होगी वैल्यू स्टोर्ड होगी हमारे पास टोनी स्टार्क तो इस तरीके से मेमोरी में अलग-अलग तरीके का डाटा जो है उसे हम सेव करवा सकते हैं अब अपने कोड के अंदर अपने वेरिएबल को कैसे हम डिक्लेयर करते हैं कोड के अंदर वेरिएबल को डिक्लेयर करने के लिए सबसे पहले तो कंसोल में ही आ जाते हैं यह हमारा वही एटीएमएल फाइल का कंसोल है इसे हम चाहे तो क्लियर कर सकते हैं कंट्रोल प् के से पूरा क्लियर हो जाएगा इसी के अंदर वेरिएबल डिफाइन करना हम स्टार्ट कर सकते हैं हम लिख सकते हैं ए इज इक्वल 24 तो ये क्या हो गया नंबर टाइप इंफॉर्मेशन हमने स्टोर करा दी एंटर किया तो हमारे पास कंसोल विंडो के अंदर बेसिकली जो भी चीज हम लिखते हैं जो भी चीज हम डिक्लेयर करते हैं वेरिएबल को तो उसकी वैल्यू हमारे पास वापस से प्रिंट होके आ जाती है अगर हमें कभी भी अब एज की दोबारा कभी वैल्यू चाहिए हो फॉर एग्जांपल मुझे एज दोबारा प्रिंट करवाना है तो मुझे सिंपली लिखना है एज और उसकी वैल्यू मेरे पास आ जाएगी तो एज को एक ही बार बताना पड़ेगा हमें कंसोल को अगर अगले साल एक साल बाद मुझे चेक करने में मेरी एज कितनी होगी तो मैं लिख सकती हूं एज + 1 और वो वैल्यू ऑटोमेटिक हमारे पास कंप्यूट होके आ जाएगी व्हिच इज इक्वल टू 25 यहीं पर हो सकता है हमें नेम की वैल्यू डिक्लेयर करनी हो कि नेम क्या है नेम है टोनी स्टार्क एंटर किया तो यहां हमारे पास आ गया टोनी स्टार्क अब अगर कभी भी हमें नेम को प्रिंट करवाना हो तो नेम की वैल्यू को हम प्रिंट करवा सकते हैं उसी तरीके से कोई आइटम है amazonflex.in 50 एंड 50 पैसा तो यह डेसिमल के साथ भी हम अपने नंबर्स को सेव करवा सकते हैं एंटर किया तो यह हमारे पास प्राइस की वैल्यू आ गई कभी भी बाद में जाकर हम इस प्राइस की वैल्यू को यूज कर सकते हैं यह तो हमने वेरिएबल को यहां पर लिख दिया हम चाहे तो वेरिएबल को अपनी फाइल के अंदर भी डिफाइन कर सकते हैं फाइल के अंदर डिफाइन करने के लिए इनफैक्ट एक्सप्लोरर पे क्लिक करके हम ये जो लेफ्ट वाला साइड बार है इसे ओपन एंड क्लोज कर सकते हैं अभी के लिए सारी लाइनें हम हटा सकते हैं हटाकर यहां पर अपना वेरिएबल हम डिफाइन करते हैं वेरिएबल डिफाइन कर करने के लिए हम लिख सकते हैं नेम इज इक्वल टू टोनी स्टार्क इसको कर लिया सेव अब यहां पर इस तरीके का क्रॉस आ रहा होगा यह नेम इज डिप्रिड बेसिकली यह जो एरर हमारे पास आ रहा है य जो क्रॉस हमारे पास आ रहा है इसका जावास्क्रिप्ट से कोई रिलेशन नहीं है हमने अपने कोड के अंदर कोई गलती नहीं की है ये ऑटोमेटिक विजुअल स्टूडियो कोड कोई और चीज समझ रहा है अपने नेम को तो इस चीज को इस एरर को कंपलीटली इग्नोर करना है एंड यहां पर हम क्या करेंगे हम कंसोल लॉग करेंगे हम चाहते हैं प्रिंट करवाना अपने वेरिएबल नेम की वैल्यू को या नेम की जगह हम इसे फुल नेम भी कह सकते हैं फुल नेम ये हमारा फुल नेम हो गया इसे हम प्रिंट करवाना चाहते हैं यहां पर तो यहां पर फुल नेम प्रिंट करवाने के लिए अगर इस तरीके से मैंने लिख दिया डबल कोड्स फुल नेम सेमीकलन लगाया सेव किया और यहां पर आए और रिफ्रेश कर दिया तो हमारे पास क्या प्रिंट होके आया हमारे पास प्रिंट हो गया है फुल नेम तो जो हमारे वेरिएबल की वैल्यू होती है अगर मुझे वेरिएबल की वैल्यू एज इट इज प्रिंट करवानी है तो उसके लिए हम डबल कोट्स या कोट्स को यूज नहीं करते उसके लिए हम डायरेक्टली अपने वेरिएबल का नाम लिखते हैं console.log के अंदर यानी यहां पर मुझे सिर्फ अपना फुल नेम लिखना है मुझे डबल कोट्स के अंदर इस वैल्यू को नहीं लिखना क्योंकि डबल कोट्स के अंदर जो चीज होती है वो वैसी की वैसी प्रिंट होती है पर मुझे तो वेरिएबल की वैल्यू चाहिए इसको सेव कर लेते हैं एंड इस बार हमने रिफ्रेश किया तो इस बार फुल नेम की जगह हमारे पास प्रिंट होकर आ गया टोनी स्टार्क इसी तरीके से अगर हम कोई और वेरिएबल बनाए फॉर एग्जांपल हमने वेरिएबल बनाया ए इ 24 एंड यहां हम प्रिंट करवाना चाह रहे हैं एज इसको सेव कर लेंगे रिफ्रेश किया हमारे पास एज आई इक्व 24 हम चाहते हैं कोई प्राइस हमारे पास हो लेट्स सपोज 99.99 तो इस तरीके से हम अपने प्राइस को प्रिंट करवा सकते हैं सेव एंड रिफ्रेश तो ये हमारे पास हमारा प्राइस प्रिंट होकर आ गया अब ऐसा नहीं है कि सिर्फ इतनी वैल्यूज होती हैं इसे हम बेसिकली अपनी स्ट्रिंग वैल्यू कहते हैं इसे हम अपनी नॉर्मल नंबर वैल्यू कह सकते हैं यह भी हमारी नंबर वैल्यू है इसके अलावा भी काफी सारी वैल्यूज होती है जावास्क्रिप्ट के अंदर इन जावास्क्रिप्ट वी आल्सो हैव समथिंग कॉल्ड नल जैसे हमने कोई वेरिएबल बनाया x और इसके अंदर हमने स्टोर करा दिया नल अब यहां पर नल का क्या मतलब होता है नल का मतलब होता है कोई वैल्यू नहीं है नल का मतलब एब्सेंट कोई वैल्यू नहीं है इसके अंदर नल वैल्यू है तो नल एक स्पेशल वैल्यू होती है और स्पेशल थोड़ा सा यहां पे कंफ्यूज ंग लग सकता है पर ये इसको ऐसे समझना है ये एक स्पेशल वैल्यू है और नल का मतलब है खाली चीज तो इसे सेव कर सकते हैं अब अगर हम x की वैल्यू को प्रिंट करवाएं सेव करें एंड रिफ्रेश करें तो इस बार हम हमारे पास प्रिंट होकर आएगा नल वैल्यू और जैसे नल होता है वैसे ही हमारे पास एक और वैल्यू होती है व्हिच वी कॉल अनडिफाइंड अनडिफाइंड और नल में दोनों में डिफरेंसेस होते हैं जावास्क्रिप्ट में ये डिफरेंस हो सकता है हमें फर्स्ट क्लास में समझ में नहीं आए और उसमें कोई परेशानी वाली बात नहीं है पर धीरे-धीरे आगे आने वाली क्लासेस के अंदर हम इन डिफरेंसेस को कवर कर रहे होंगे हम बात करेंगे हम कई जगह यूज भी करेंगे नल का क्या स्पेशल मतलब है नल कहां पे यूज होता है अनडिफाइंड का क्या स्पेशल मतलब है अनडिफाइंड कहां पे यूज होता है उसको हम बेसिकली यूज करने वाले हैं पर आप में से कुछ स्टूडेंट्स हो सकता है जिन्होंने ऑलरेडी जावास्क्रिप्ट के कई बार पहले कभी बेसिक्स पढ़े हो तो उनके लिए मैं बता देती हूं अनडिफाइंड का मतलब होता है पता ही नहीं कि इसके अंदर क्या है नल का मतलब होता है पता तो है इसके अंदर क्या है पर इसके अंदर एक खाली वैल्यू है तो अनडिफाइंड और नल के अंदर एक छोटा सा डिफरेंस होता है बट ये डिफरेंस काफी इंपॉर्टेंट है बट अभी के लिए वो डिफरेंस क्या है उसके ज्यादा डिटेल में हमें जाने की जरूरत नहीं है बस मैं आपको शो करके दिखा रही हूं फर्स्ट क्लास के अंदर ही कि नल और अनडिफाइंड जैसी भी चीजें यहां पे एजिस्ट करती हैं तो इसकी वैल्यू क्या है अनडिफाइंड है तो जावास्क्रिप्ट के अंदर कई सारी डिफरेंट डिफरेंट तरीके की वैल्यूज हो सकती हैं जिनको हम स्टोर करा सकते हैं अपने वेरिएबल के अंदर जनरली जो हमारे वेरिएबल के नाम हो सकते हैं लद हम x वाईज ए बी सीडी कुछ भी नाम दे सकते हैं अपने वेरिएबल को पर हमें प्रेफर करना है एज अ गुड प्रोग्रामर सबसे बढ़िया निशानी सबसे पहली निशानी अच्छे प्रोग्रामर की ये होती है कि उनके वेरिएबल के नाम मीनिंगफुल होते हैं ऐसा नहीं हर वेरिएबल को ए बी सी डीई एफ जी एच इस तरीके के नाम दे दिए अगर हम एज स्टोर करा रहे हैं तो हम एज नाम देंगे प्राइस स्टोर करा रहे हैं प्राइस नाम देंगे अगर हम रेडियस स्टोर करा रहे हैं तो हम रेडियस नाम देंगे फॉर एग्जांपल हमारी रेडियस है इक्वल टू 14 तो इस तरीके से हमने रेडियस स्टोर करवाई हमने फुल नेम स्टोर करवाया तो वेरिएबल का नाम पढ़ते ही समझ में आ जानी चाहिए कि इसके अंदर किस तरीके की वैल्यू हमारे पास स्टोर्ड होगी अब इन सारे टाइप्स के साथ एक और टाइप होता है हमारे पास जिसको हम कहते हैं बुलियन टाइप बुलियन के अंदर दो तरीके की वैल्यूज होती हैं हमारे पास एक होती है हमारी ट्रू वैल्यू और एक होती है हमारी फाल्स वैल्यू ट्रू वैल्यू कहने का मतलब है कि अगर फॉर एग्जांपल हम देखना चाहते हैं कि सोशल मीडिया पे हम किसी को फॉलो कर रहे हैं या नहीं कर रहे तो हम एक इज फॉलो नाम का वेरिएबल बना सकते हैं और इज फॉलो के अंदर अगर हमने फॉल्स स्टोर करवाया है तो इसका मतलब इज फॉलो की वैल्यू है फॉल्स के इक्वल फॉल्स मतलब नेगेटिव तो यहां पे हम इज फॉलो ये जो वेरिएबल है इसकी वैल्यू प्रिंट करवा सकते हैं रिफ्रेश किया हमारे पास फॉल्स आ गया उसी तरीके से अगर हम किसी को फॉलो कर रहे हैं तो वेरिएबल के अंदर हम ट्रू प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया तो इस बार हमारे पास ट्रू आ गया तो बुलियन टाइप की वैल्यूज भी हम अपने वेरिएबल के अंदर स्टोर करा सकते हैं और बुलियन में दो ही अवेलेबल टाइप्स होते हैं एक या तो हम ट्रू वैल्यू स्टोर करा सकते हैं या फिर हम अपनी फाल्स वैल्यू को स्टोर करा सकते हैं अब जावास्क्रिप्ट की जब हम बात करते हैं जावास्क्रिप्ट इज अ वेरी इंटरेस्टिंग लैंग्वेज और इसके अंदर काफी इंटरेस्टिंग चीज जो है दैट इज कि जावास्क्रिप्ट हमारी एक डायनेमिक टाइप्ड लैंग्वेज होती है डायनेमिक टाइप्ड लैंग्वेज वैसे फर्स्ट टाइम अगर हम जावास्क्रिप्ट पढ़ रहे हैं तो इतना ज्यादा हमें इंपॉर्टेंस समझ नहीं आएगी पर अगर आप में से कुछ कोई स्टूडेंट है जिसने सी पढ़ी हुई है जिसने जावा पढ़ी हुई है जिसने c+ प पढ़ी हुई है उसको कोई इंपॉर्टेंट समझ में आएगी जनरली जो दूसरी प्रोग्रामिंग लैंग्वेजेस होती हैं जिनको हम डीएसए या कुछ और करने के लिए पढ़ते हैं वहां पे हमें पहले ही बताना पड़ता है कि अगर कोई वेरिएबल है तो उस वेरिएबल के अंदर आप नंबर स्टोर कराना चाहते हो आप बुलियन स्टोर कराना चाहते हो आप स्ट्रिंग स्टोर कराना चाहते हो कुछ और स्टोर कराना चाहते हो पर जावास्क्रिप्ट के अंदर हमें नहीं बताना पड़ता जावास्क्रिप्ट के अंदर हम किसी भी वैल्यू के अंदर कुछ भी स्टोर करा सकते हैं किसी भी वेरिएबल के अंदर कुछ भी फॉर एग्जांपल कल को हमारा मन किया कि मुझे यह जो फुल नेम है यह जो फुल नेम वेरिएबल है इस फुल नेम वेरिएबल के अंदर मुझे तो 25 स्टोर कराना है लद यह काफी खराब तरीका होगा कोड को लिखने का क्योंकि फुल नेम एक नाम होना चाहिए दिखाई दे रहा है इसके अंदर कुछ स्ट्रिंग होनी चाहिए पर फिर भी मेरा मन किया कल को इसको चेंज करके हम इसके अंदर कोई नंबर स्टोर करा देंगे और यहां पे हम अपने फुल नेम को प्रिंट करवाएं तो इससे क्या होगा पहले तो फुल नेम की वैल्यू टोनी स्टार्क थी पर हमने उसे चेंज करके 25 कर दिया अब फुल नेम की वैल्यू जो प्रिंट होगी वो 25 होनी चाहिए रिफ्रेश किया तो अब हमारे पास 25 प्रिंट होके आया तो यानी डायनेमिक टाइप कहने का मतलब है कि जावास्क्रिप्ट के अंदर पहले से आपको नहीं बताना पड़ता कि कौन से वेरिएबल के अंदर क्या वैल्यू स्टोर्ड होगी डायरेक्टली आप अपनी वैल्यू स्टोर कराना स्टार्ट कर सकते हो चाहे आपको नंबर स्टोर कराना है स्ट्रिंग स्टोर कराना है कुछ भी कराना है और जनरली जावास्क्रिप्ट के अंदर अगर आपने कोई वेरिएबल बनाया हुआ है तो उसके अंदर कल को जाके आप डिफरेंट टाइप की वैल्यू को भी स्टोर करा सकते हो आज हमारे पास स्ट्रिंग है कल को हमारे पास नंबर हो गया इसके बाद चाहे तो कल को हम कोई बुलियन वेरिएबल भी इसके अंदर स्टोर करा सकते हैं तो ये मतलब होता है जावास्क्रिप्ट के डायनेमिक टाइप्ड होने का कि हमें पहले से ही अपने डाटा का टाइप नहीं बताना पड़ता वो डायनेमिक डायनेमिक यानी कोड जैसे ही रन करता है वो रन टाइम पे जाके जावास्क्रिप्ट कैलकुलेट कर लेता है जावास्क्रिप्ट का इंटरप्रेटर मतलब इंटरनली जो मशीन जावास्क्रिप्ट को रन कर रही है कि किस तरीके से कौन से वेरिएबल पर कौन सा डटा टाइप है जिसको हमें यूज करना होता है साथ के साथ बार-बार ये जो इक्वल टू साइन हम देख रहे हैं दिस इक्वल टू दिस इक्वल टू दिस इक्वल टू इसे जावास्क्रिप्ट के अंदर हम अपना असाइनमेंट ऑपरेटर कहते हैं और असाइनमेंट ऑपरेटर हमने मैथ में भी देखा होगा मैथ में जनरली अगर हमें लिखना होता है a = b तो उसके लिए हम इस तरीके से लिखते हैं पर प्रोग्रामिंग के अंदर a = b का मतलब यह नहीं होता दोनों की वैल्यू सेम है इसका मतलब होता है b में जो भी वैल्यू है वो a वेरिएबल के अंदर जाके सेव कर दो ये मतलब होता है तो इसे हम इक्वल टू को असाइनमेंट ऑपरेटर कहते हैं असाइनमेंट यानी असाइन कर रहा है किसी वैल्यू को वैल्यू दे रहा है जाके ये जो ट्रू वैल्यू है ये इस वेरिएबल के अंदर जाके सेव हो रही है ये जो अनडिफाइंड है ये इस वेरिएबल के अंदर जाके सेव हो रहा है ये जो 24 है ये इस एज वेरिएबल के अंदर जाके सेव हो रहा है तो इस तरीके से ये असाइनमेंट ऑपरेटर है जो राइट साइड की की वैल्यू को लेफ्ट साइड की वैल्यू के अंदर जाके सेव कर रहा है अब ये तो हो गई हमारी जनरल चीजें अबाउट वेरिएबल इसके अलावा यह जो वेरिएबल का नाम हमने लिखा है हम अपनी मर्जी से चाहे तो कुछ भी नाम दे सकते हैं अपने वेरिएबल को जैसे मैंने एज नाम दे दिया मैंने प्राइस नाम दे दिया मैंने रेडियस नाम दे दिया मेरी मर्जी थी मैं इसको रड नाम भी दे सकती थी मैं इसको सिर्फ आर भी बोल सकती थी सारे के सारे नाम बिल्कुल सही होते हैं पर वेरिएबल को ये जो नाम दिए जाते हैं इनके भी कुछ-कुछ रूल्स कन्वेंशंस होते हैं जिनको हमें फॉलो करना होता है फोर मेजर रूल्स हैं सबसे पहला रूल कहता है कि के जो नेम होते हैं दे आर केस सेंसिटिव केस सेंसिटिव यानी अपर केस और लोअर केस में डिफरेंस है अगर मैंने एक वेरिएबल बनाया एल और मैंने दूसरा वेरिएबल बना दिया विद द नेम एप्ल दोनों का ही अलग मतलब होगा दोनों सेम नहीं है तो गलती से भी स्मॉल को कैपिटल नहीं लिख देना कैपिटल को स्मल नहीं लिख देना है फॉर एग्जांपल इन सबको हटा देते हैं मैंने एक वेरिएबल बनाया फुल नेम इस तरीके से मैंने यहां पे फुल नेम लिखा और फुल नेम के अंदर मैंने स्टोर करवाया श्रद्धा खारा इस तरीके से और मैंने दूसरा वेरिएबल बनाया फुल नेम और इसके अंदर कुछ नहीं किया बस एक स्मॉल n मैंने चेंज कर दिया और यहां पर मैंने स्टोर करवाया फॉर एग्जांपल अमन धतरवाल तो इस तरीके से दो नाम मेरे पास हैं अब फर्स्ट टाइम में मैं प्रिंट करवा रही हूं स्मॉल वाला जिसमें सारी चीजें स्मॉल केस में इनफैक्ट और थोड़ा सा मैं आपको डिफरेंस दिखाने के लिए इसको फुल नेम कर देती हूं फुल नेम एंड सेकंड टाइम हम कसोल डलॉग करके प्रिंट करवा रहे हैं फुल नेम सेव कर लेते हैं रिफ्रेश करते हैं तो फर्स्ट टाइम जो चीज प्रिंट हो और सेकंड टाइम जो चीज प्रिंट हो रही है ये दोनों अलग-अलग चीजें हैं जावास्क्रिप्ट में और इनफैक्ट अगर आपने पूरा चेंज नहीं किया होता सिर्फ एक लेटर चेंज किया होता तो भी उसमें कोई एरर नहीं आता क्योंकि दोनों क्या है दोनों अलग-अलग चीजें हैं पर जनरली हमें क्या करना है जनरली इस तरीके से सेम नेम के दो वेरिएबल हमें क्रिएट नहीं करने हैं क्योंकि इससे कंफ्यूजन होता है कई बार जब हम वेबसाइट पूरी पूरी बिल्ड कर रहे होंगे जावास्क्रिप्ट में बहुत सारी लाइंस ऑफ कोड हैं जिनको हम लिख रहे होंगे तो इसलिए इस तरीके की चीजों को नहीं करना होता पर हां कहीं भी भी अगर ऐसा कोड हमें दिख जाए तो हमें पता है स्मल ए कैपिटल ए स्मॉल लेटर कैपिटल लेटर में डिफरेंस है सेकंड रूल कहता है कि ओनली लेटर्स डिजिट्स अंडरस्कोर एंड डॉलर साइन इज अलाउड स्पेस भी अलाउड नहीं होती वेरिएबल के नाम में मतलब अगर हमारा मन करें कि हम अपने वेरिएबल को नाम दे दें फुल स्पेस नेम इज इक्वल टू टोनी स्टार्क इस तरीके का अगर हम कोई नाम देना चाहे इसके अंदर क्या हुआ एरर आ गया क्योंकि वेरिएबल के नेम में स्पेस नहीं हो सकती तो अनएक्सपेक्टेड कीवर्ड और आइडेंटिफिकेशन नेम को अलग समझ रहा है पर हमें दोनों को साथ में जोड़ के रखना है अब साथ में जब हम जोड़ के रखते हैं तो हर तरीके के कैरेक्टर्स अलाउड नहीं होते वेरिएबल के नेम में हम क्या कर सकते हैं डॉलर साइन ऐड कर सकते हैं हम अंडरस्कोर ऐड कर सकते हैं या फुल नेम हमने लिख दिया फुल नेम 1 2 3 भी हम लिख सकते हैं यह भी एक वैलिड वेरिएबल का नाम है पर अगर मैं बोलूं कि मुझे लिखना है फुल नेम रेट ये क्या हो जाएगा यह गलत नाम हो जाएगा अनएक्सपेक्टेड कीवर्ड और आइडेंटिफिकेशन सिंबल स्पेशल कैरेक्टर है ये अलाउड नहीं है तो सिर्फ यही चार कैरेक्टर्स हैं जिनको हम यूज कर सकते हैं उसके अलावा जो हमारा वेरिएबल है उसका फर्स्ट कैरेक्टर या तो एक लेटर होना चाहिए a टूज में या कैपिटल ए से कैपिटल z के बीच में या कोई अंडरस्कोर होना चाहिए या फिर डॉलर होना चाहिए फॉर एग्जांपल हमने फुल नेम लिखा तो या तो हम इस तरीके से फुल नेम लिख सकते हैं नॉर्मली जो हमने अपने लेटर के साथ लिखा हुआ है या फिर हम शुरुआत में अंडरस्कोर लगा सकते हैं इस तरीके का फुल नेम भी ठीक होगा मतलब दिस इज अ वैलिड और यहां पर मैं n को कैपिटल कर लेती हूं ताकि हमें पता चले दिस इज अ कॉमिनेशन ऑफ टू वर्ड्स या फिर हम चाहे तो इस तरीके से भी लिख सकते हैं मैंने डॉलर साइन लगा दिया तो यह भी फुल नेम कंप्लीट लॉजिकल है कंपलीटली ठीक है ये तीनों वैलिड है पर अगर मैं सोचूं मैं लिखूं 1 2 3 फुल नेम और इस तरीके से हम कोई वैल्यू उसके अंदर लिखना चाहे तो ये क्या होगा यह हमें एरर देगा एरर क्या दे रहा है एन आइडेंटिफिकेशन आ सकती वेरिएबल से पहले तो यह हमारे पास एरर जनरेट करेगा आल्सो जावास्क्रिप्ट के अंदर रिजर्व्ड वर्ड्स कैन नॉट बी वेरिएबल नेम्स रिजर्व्ड वर्ड्स क्या होते हैं जैसे हर लैंग्वेज की अपनी कुछ डिक्शनरी होती है इंग्लिश की अपनी डिक्शनरी होती है हिंदी की अपनी डिक्शनरी होती है जर्मन की अपनी डिक्शनरी होती है डिक्शनरी यानी उस लैंग्वेज के अंदर कुछ फिक्स्ड वर्ड्स हैं जिनके फिक्स मतलब है मुझे पता है अगर दिस इज अ माउस तो माउस का एक ही मतलब हो सकता है मुझे पता है दिस इज अ पेन तो पेन का एक ही मतलब हो सकता है इसी तरीके से जावास्क्रिप्ट की भी अपनी डिक्शनरी है और उसके अंदर कुछ शब्दों के फिक्स्ड मतलब है जैसे ये जो कंसोल हमने लिखा हुआ है कंसोल का फिक्स मतलब है मतलब इन वर्ड्स को न्हें हम कहेंगे रिजर्व्ड वर्ड्स जो प्रोटेक्टेड हैं इन वर्ड्स को हम वेरिएबल नेम्स की तरह यूज नहीं कर सकते फॉर एग्जांपल इफ आई डिसाइड कि कंसोल इज इक्वल टू अपना कॉलेज इस तरीके से हम कुछ लिखना चाहे एंड फिर हम अपने कंसोल की वैल्यू को यहां पर प्रिंट करवा दें सेव कराएं और रिफ्रेश तो यहां क्या आएगा कसोल डलॉग इज नॉट अ फंक्शन एट दिस वैल्यू मतलब यहां पर कंसोल का क्या है फिक्स मतलब है पर यहीं पर अगर कंसोल को मैंने कैपिटल सी के साथ स्टार्ट कर दिया और इसको भी कैपिटल सी के साथ स्टार्ट कर दिया सेव किया एंड रिफ्रेश किया तो इस बार हमारे पास एरर नहीं आएगा क्योंकि सिर्फ स्मल सी वाला कंसोल ही हमारे जावास्क्रिप्ट के अंदर रिजर्व्ड कीवर्ड होता है कैपिटल सी वाला कंसोल हमारे जावास्क्रिप्ट के अंदर रिजर्व कीवर्ड नहीं होता दिस इज अ लिस्ट ऑफ ऑल द रिजर्व्ड वर्ड्स जो हमारे जावास्क्रिप्ट के अंदर होते हैं जिनको हम अपने वेरिएबल के नेम्स की तरह यूज नहीं कर सकते यह जो लिंक है या यह जो लिस्ट है यह मैं आपको नोट्स के अंदर प्रोवाइड कर दूंगी तो यह हमारी प्रॉपर लिस्ट होती है रिजर्व कीवर्ड्स की जिनको वेरिएबल नेम्स की तरह यूज नहीं कर सकते तो ये तो चार रूल्स हमारे पास होते ही हैं साथ के साथ एक कन्वेंशन भी होता है कन्वेंशन होता है कि रूल नहीं है मतलब इस चीज को अगर आप फॉलो नहीं करोगे तो कोई एरर नहीं आएगा बट फिर भी हमें फॉलो करना चाहिए क्योंकि हमें सिर्फ जावास्क्रिप्ट नहीं सीखनी हमें एक अच्छे डेवलपर की तरह कोड लिखना भी साथ के साथ सीखना है हमारे पास प्रोग्रामिंग में देयर इज समथिंग कॉल्ड केसेस केसेस कहने का मतलब होता है कि अगर हमें कोई वेरिएबल बनाना है लेट्स सपोज हमें फुल नेम वेरिएबल बनाना है तो इसे या तो हम ऐसे लिख सकते हैं फुल नेम या फिर इसे हम लिख सकते हैं फुल नेम या फिर इसे लिखा जा सकता है फुल अंडरस्कोर नेम या फिर इसे लिखा जा सकता है फुल डैश नेम इनफैक्ट इसे हम ऐसे भी लिख सकते हैं एफ को हमने कैपिटल बना दिया फुल और फिर n को कैपिटल बना दिया अब यह तो होता है जनरल तरीका चीजें लिखने का हमें अगर जनरली ऐसा वेरिएबल का नाम लिखना होता है जिसमें दो वर्ड्स हैं तो उसे लिखने के लिए हम इस तरीके को फॉलो करते हैं यह वाला तरीका इसे हम कहते हैं अपना कैमल केस कैमल केस का मतलब होता है कि फर्स्ट लेटर फर्स्ट वर्ड का फर्स्ट लेटर स्मॉल होगा सेकंड वर्ड का फर्स्ट लेटर कैपिटल होगा या इसके बाद जितने भी वर्ड्स आएंगे सबका फर्स्ट लेटर कैपिटल होगा ना हम इसे यूज करते हैं ना हम इसे यूज करते हैं इसे वैसे स्नेक केस कहा जाता है इसे हम कबाब केस कहते हैं यह जो लास्ट वाला है इसे हम अपना पास्कल केस कहते हैं पर इनमें से किसी भी केस को हम यूज़ नहीं करते हम यूज़ करते हैं फर्स्ट वाले को यानी हमारा जो फर्स्ट लेटर होगा वो स्मॉल होगा एंड नेक्स्ट वर्ड का नेक्स्ट लेटर हमारे पास कैपिटल होगा उसी तरीके से अगर हमें कुछ और मान लेते हैं वेरिएबल बनाना है लेट्स सपोज आई हैव टू मेक अ वेरिएबल कॉल्ड इज फॉलो फॉलो कर रहे हैं या नहीं कर रहे तो उसके लिए हम इस फॉलो को इस तरीके से लिखेंगे जिसमें आ स्मॉल होगा और दूसरा वर्ड जो है फॉलो उसका एफ हमारे पास कैपिटल होगा अगर इस तरीके से हमें एक और वेबल बनाना है टोटल प्राइस तो टोटल प्राइस को हम इस तरीके से लिखेंगे पहले स्मॉल एंड उसके बाद सेकंड वर्ड का फर्स्ट लेटर हमारे पास कैपिटल तो इस तरीके से हम अपने वेरिएबल नेम को डिफाइन करते हैं इन जावास्क्रिप्ट अब जब भी हम अपने वेरिएबल को डिफाइन करते हैं अभी हमने अपने वेरिएबल को कैसे डिफाइन किया हमने लिख दिया ए इज इ 24 हमने लिख दिया नेम इज इक्वल टू टोनी इस तरीके से हमने वेरिएबल को लिख दिया बट जनरली इवन दो हमारे पास कोई एरर नहीं आया पर हमें ऐसे अपने वेरिएबल को जावास्क्रिप्ट के अंदर कभी डिफाइन नहीं करना हमें हमेशा वेरिएबल के नाम के सामने एक कीवर्ड यूज करना पड़ता है कीवर्ड यानी एक ऐसा फिक्स्ड रिजर्व्ड वर्ड यूज करना पड़ता है जावास्क्रिप्ट के अंदर और इस कीवर्ड को हम कहते हैं अपना लेट कीवर्ड एंड इनफैक्ट वेरिएबल नेम्स के सामने हम तीन कीवर्ड्स हैं जिनको यूज़ कर सकते हैं एक होता है हमारे पास लेट एक होता है हमारे पास कॉन्स्ट एक होता है हमारे पास वेर अब हमेशा मैक्सिमम केसेस में हम क्या कर रहे होंगे हम या तो लेट या फिर कॉन्स्ट इन दो कीवर्ड्स को यूज करेंगे सबसे पहले शुरुआत करते हैं अपने लेट कीवर्ड साथ अगर हमें नेम डिफाइन करना है तो हम लिखेंगे लेट नेम इज इक्वल टू हम यहां लिख सकते हैं टोनी स्टार्क यह हमारे पा एक वेरिएबल हो गया नेम और लेट से हमने क्या किया हमने जावास्क्रिप्ट को बताया कि हम एक वेरिएबल को डिफाइन करने जा रहे हैं तो यहां हमने नेम की वैल्यू प्रिंट करवाने की कोशिश की ये जो लाइन आ रही है वेरिएबल के नाम के ऊपर इसको अभी के लिए इग्नोर करना है सेव किया रिफ्रेश किया हमारे पास नाम प्रिंट होकर आ गया टोनी स्टार्क हम इसे चाहे तो फुल नेम भी लिख सकते हैं कॉपी कर कर लेंगे फुल नेम मैं सिर्फ वो लाइन हटाने के लिए दे रही हूं व्हिच इज़ रियली अननोइंग कोई नहीं हमने अपने वेरिएबल को फुल नेम नाम दे दिया अब हम कोई और वेरिएबल डिफाइन करना चाहते हैं लेट एज इज इक्वल ट 24 तो हमने वो कर दिया हमने लिख दिया लेट प्राइस या इसे हम कह सकते हैं टोटल प्राइस इज इक्वल टू अ 1000 तो इस तरीके से हमने टोटल प्राइस डिक्लेयर कर दिया तो जनरली अपने वेरिएबल को डिक्लेयर करने के लिए हम अपने लेट कीवर्ड को यूज़ करते हैं लद यहां पे कोई एरर नहीं आ रहा पर हमें हमेशा कोई ना कोई कीवर्ड यूज़ करना है अपने वेरिएबल को डिक्लेयर करने के लिए अब हमारे पास वेरिएबल को डिक्लेयर करने के लिए तीन चॉइसेज होती हैं इनमें से सबसे जो पुरानी चॉइस है सबसे पुरानी चॉइस का नाम है वयर यानी हम पहले कैसे वेरिएबल को डिफाइन करते थे हम वयर लिखा करते थे शुरुआत में जब जावास्क्रिप्ट हमारे पास होती थी हम वयर लिखते थे इस तरीके से वयर लिखते थे अभी भी अगर मैंने वयर लिख के वयर मतलब वेरिएबल वेरिएबल लिख के अगर मैंने अपनी वेरिएबल को डिफाइन कर दिया सेव किया रिफ्रेश किया तो वैसे का वैसा टोनी स्टार्क मेरे पास प्रिंट होकर आ रहा है कोई एरर नहीं आया बट एज अ गुड प्रोग्रामर हम वेर को कभी भी यूज नहीं करेंगे अब जावास्क्रिप्ट के अंदर वेर क्या होता था 2015 से पहले वर यूज़ होता था 2015 से पहले लेट और कॉन्स हमारे पास होते ही नहीं थे पर 2015 के अंदर जावास्क्रिप्ट के अंदर वी गॉट समथिंग कॉल्ड es6 हमारे पास आया समथिंग कॉल्ड es6 इसको कहते हैं एकमा स्क्रिप्ट सिक्स यानी जावास्क्रिप्ट का एक नया स्टैंडर्ड हमारे पास आया कब आया 2015 के अंदर आया था नया स्टैंडर्ड मतलब नए रूल्स आए जावास्क्रिप्ट लैंग्वेज के अंदर नए फीचर्स हमारे पास आए और इनमें से एक नई चीज जो जावास्क्रिप्ट के अंदर आई वो थी हमारे लेट एंड कंस्ट कीवर्ड फॉर डिक्लेयर वेरिएबल अब वेयर जो होता है वयर के साथ काफी सारे प्रॉब्लम्स होते हैं और इनमें से एक प्रॉब्लम यह है कि वेयर के अंदर किसी भी वेरिएबल को आप री डिक्लेयर कर सकते हो अपडेट तो करही सकते हो वेरिएबल को साथ के साथ उसे री डिक्लेयर भी हम कर सकते हैं फॉर एग्जांपल अगर वेर से हमने कोई वेरिएबल बनाया हमने यहां पे वेरिएबल बनाया वेर एज इ इक्व ट 24 तो हम यहां पर दोबारा लिख सकते हैं वेर एज इ 58 59 कुछ भी एंड फिर से लिख सकते हैं वेर एज इ इक्वल टू 86 कोई एरर हमारे पास नहीं आएगा और जब हम करेंगे कसोल डलॉग ए अब हमारे पास कौन सी चीज आएगी क्योंकि हमने लास्ट में अपने इस वेरिएबल को डिक्लेयर किया तो हमारे पास वर में हमारे पास एज में 86 आकर प्रिंट होगा बट ये क्या है ये कोड को लिखने का कोई सही तरीका नहीं है यह कन्फ्यूजिंग है कन्फ्यूजिंग इसलिए क्योंकि अभी तो हमारे पास छोटा सा कोड है तीन चार लाइन है कोड के अंदर अंदर परट जावास्क्रिप्ट के अंदर जब हम प्रॉपर वेबसाइट्स बना रहे होते हैं तो हमारे पास हंड्रेड्स थाउजेंड्स ऑफ लाइंस ऑफ कोड हो जाते हैं ऐसे केसेस में अगर आपने किसी प्रोग्रामिंग लैंग्वेज में अलाव कर दिया कि बार-बार उसी वेरिएबल को हम री डिक्लेयर कर सकते हैं तो बहुत ज्यादा कंफ्यूजन हो जाएगा उस लैंग्वेज के अंदर तो इसीलिए वेर जो है अच्छा तरीका नहीं है वेरिएबल को डिफाइन करने का इससे काफी ज्यादा कंफ्यूजन होता है और कई जगह एरर्स भी आते हैं तो इसीलिए जब भी हम वेरिएबल को डिफाइन करेंगे हम लेट को यूज़ करके डिफाइन करेंगे और लेट को यूज़ करके जब हम किसी वेरिएबल को डिफाइन करते हैं तो इस तरीके से बार-बार नहीं कर सकते क्योंकि जब आप बार-बार करोगे तो एरर आ जाएगा क्या एरर आ रहा है कैन नॉट री डिक्लेयर ब्लॉक स् कोपड वेरिएबल एज यानी ये जो वेरिएबल है ये ऑलरेडी डिक्लेयर्ड था डिक्लेयर कर रखा था आपने बता रखा था जावास्क्रिप्ट को वेरिएबल के बारे में तो आप इसे बार-बार री डिक्लेयर नहीं कर सकते तो यूजिंग लेट वेरिएबल कैन नॉट बी रीडिक्लेयर्ड बट हां इनको हम अपडेट कर सकते हैं अपडेट मतलब उसी एज वेरिएबल की वैल्यू को आप 59 बना सकते हो उसी एज वेरिएबल की वैल्यू को आप 86 बना सकते हो पहले क्या हो रहा था तीन अलग-अलग एज नाम के ही वेरिएबल बन रहे थे पर इस बार एक बार ही एज नाम का वेरिएबल बन रहा है यानी मेमोरी के अंदर इफ दिस इज माय मेमोरी यहां पे हमारे पास एज नाम का एक ही वेरिएबल बन रहा है जिसके अंदर वैल्यू स्टोर्ड है शुरुआत में 24 उसके बाद यही वैल्यू डिलीट होकर हमारे पास नई वैल्यू आती है 59 और फिर यही वैल्यू डिलीट होके हमारे पास नई वैल्यू आती है 86 पर वेरिएबल एक ही है वो तीन बार डिक्लेयर नहीं हो रहा सो दिस इज द राइट वे ऑफ डिक्लेयर वेरिएबल एंड इसके अलावा हमारे पास एक और स्पेशल कीवर्ड होता है जिसका काम होता है कंस्ट यानी कांस्टेंट्स को डिफाइन करना कांस्टेंट का मतलब होता है इंग्लिश के अंदर ऐसी चीज जो चेंज नहीं हो सकती तो कॉनस ऐसे वेरिएबल होते हैं जिनको ना आप री डिक्लेयर कर सकते हो ना उनकी वैल्यू को आप अपडेट कर सकते हो एक बार आपने बोल दिया कांस्टेंट की वैल्यू ये है उसको चेंज नहीं किया जा सकता कोड के अंदर फॉर एग्जांपल हमने एक बार बोल दिया कंस्ट एज इ इक्वल ट 24 तो उसके बाद हम कंस्ट को इस तरीके से दोबारा चेंज नहीं कर सकते एरर यहां पर नहीं आएगा पर जैसे ही हम रिफ्रेश करेंगे यहां पे हमारे पास एरर आ जाएगा असाइनमेंट टू कांस्टेंट वेरिएबल मतलब यह आपने कांस्टेंट वेरिएबल बनाया इसी को आप वैल्यू नहीं दे रहे हो कांस्टेंट का मतलब वो तो होता है फिक्स कर दिया आज हमने इसके ऊपर लॉक लगा दिया इसकी वैल्यू फिक्स हो चुकी है तो कांस्टेंट्स कहां यूज़ कर सकते हैं फॉर एग्जांपल हमारे पास मैथ के अंदर बहुत सारे कांस्टेंट्स होते हैं जब भी हमें एरिया कैलकुलेट करना होता है हम पाई जैसे कांस्टेंट्स को यूज़ करते हैं p स् करने के लिए या फिर हम e जैसे कांस्टेंट्स को यूज़ करते हैं तो इस तरीके से बहुत सारे कांस्टेंट्स होते हैं मैथ के अंदर तो उसी तरीके के कांस्टेंट्स को डिफाइन करने के लिए आई कैन राइट कॉस्ट पा = 3.14 ये हमारा एक कांस्टेंट हो गया इसकी वैल्यू को नॉर्मल वेरिएबल की तरह हम चाहे तो प्रिंट भी करवा सकते हैं और जनरली जो कांस्टेंट्स होते हैं जिनको हम हर जगह यूज़ कर रहे होते हैं उनको हम कैपिटल लेटर से लिखना भी प्रेफर कर सकते हैं सेव किया रिफ्रेश किया तो ये हमारी पाई की वैल्यू हमारे पास प्रिंट होकर आ गई तो जब भी वेरिएबल को अब से हम डिक्लेयर करेंगे दो कीवर्ड्स को हम यूज़ कर सकते हैं एक होगा हमारा लेट कीवर्ड एक होगा हमारा कॉन्स्ट कीवर्ड कॉन्स्ट को जनरली हम ज्यादा प्रेफर करते हैं क्योंकि हमारे जितने भी वेरिएबल होते जनरली उनकी वैल्यू ज्यादा चेंज नहीं हो रही होती तो मैक्सिमम केसेस में हम अपने वेरिएबल को कंस्ट बना सकते हैं और जहां-जहां जरूरत पड़े उन्हें हम लेट कीवर्ड से भी डिफाइन कर सकते हैं आल्सो इन कीवर्ड्स के बारे में एक और चीज अगर फॉर एग्जांपल हमने लेट कीवर्ड से एक वेरिएबल बनाया तो हम उसको सिंपली इतना भी छोड़ सकते हैं लेट a हमने यह बता दिया जावास्क्रिप्ट को कि a नाम का कोई वेरिएबल है बट हमने वैल्यू नहीं बताई उसकी और फिर अगर हम a को प्रिंट करवाते हैं तो रिफ्रेश किया हमारे पास क्या आएगा अनडिफाइंड तो बाय डिफॉल्ट कोई भी अगर वेरिएबल डिक्लेयर होता है जावास्क्रिप्ट के अंदर पर उसको कोई वैल्यू नहीं मिली तो वो बाय डिफॉल्ट हमेशा अनडिफाइंड होता है जैसे ही आपने a को कोई वैल्यू दे दी 10 दे दी तो उसके बाद अनडिफाइंड नहीं होगा अब उसकी वैल्यू प्रिंट हो जाएगी पर ये चीज कांस्टेंट्स के लिए वर्क नहीं करती अगर आपने कोई कांस्टेंट डिक्लेयर किया कॉन्स्ट ए और फिर अगर आप उसको प्रिंट करवाने की कोशिश करोगे यू विल गेट एन एरर एरर इज मिसिंग इनिशियल इजर इन कांस्टेंट डिक्लेरेशन यानी इनिशियल इजर इनिश इजर यानी शुरुआत की जो वैल्यू है वह आपने कांस्टेंट को नहीं दी तो कॉन्स्ट अगर आप लिख रहे हो किसी भी वेरिएबल को हमेशा उसे शुरुआत में कोई ना कोई वैल्यू देनी है नहीं तो हमारे पास एरर आ जाएगा यही सेम वैल्यू यहां पे मुझे दिखाई दे रहा है कॉन्स्ट डिक्लेरेशंस मस्ट बी इनिश इज्ड तो कंस्ट को अगर लिखना है तो हमेशा किसी ना किसी वैल्यू के साथ उसको इनिश इज करना पड़ेगा लेट को इनिश करने की जरूरत नहीं है एक और एडिशनल चीज कॉन्स्ट लेट एंड वेयर के बारे में जो यहां पे आपको देखने को मिली होगी इवन दो इसे बाद में हम डिटेल में पढ़ेंगे व्हिच इज स्कोप स्कोप को हम बाद में पढ़ेंगे फंक्शंस नाम का हम एक टॉपिक पढ़ेंगे उसके साथ स्कोप को डिटेल में पढ़ेंगे हमारे जो वेरिएबल होते हैं जो वर से डिफाइन होते हैं उनका ग्लोबल स्कोप होता है ग्लोबल यानी पूरे कोड के अंदर उनको कहीं भी यूज़ किया जा सकता है पर हमारे जो लेट कीवर्ड से या कॉन्स्ट कीवर्ड से वेरिएबल डिक्लेयर होते हैं उनका ब्लॉक स्कोप होता है ब्लॉक स्कोप कहने का मतलब ब्लॉक होता है प्रोग्रामिंग के अंदर सिर्फ जावास्क्रिप्ट में नहीं किसी भी प्रोग्रामिंग लैंग्वेज में ब्लॉक का मतलब होता है कर्ली ब्रेसेज ये जो कर्ली ब्रेसेज होते हैं कर्ली ब्रेसेज यानी ये वाले कर्ली ब्रैकेट इसे हम एक ब्लॉक कह देते हैं इन दो कर्ली ब्रैकेट के बीच में जो भी हम पूरा का पूरा कोड लिखते हैं इस कोड को कहा जाता है वन ब्लॉक और तो अगर एक ब्लॉक के अंदर हमने लेट कीवर्ड से अपने वेरिएबल को डिफाइन कर दिया तो वो उसी ब्लॉक का वेरिएबल कहलाएगा फॉर एग्जांपल यहां पे अगर हम लिख दें लेट यह हमने ओपनिंग कर्ली ब्रैकेट लिख दिया कर्ली ब्रेस ये हमने क्लोजिंग कली ब्रेस लिख दिया लेट a इ इ 5 और यहां मैं प्रिंट करवाऊं कसोल ड लॉग a यह हमारा एक वेरिएबल हो गया अब यहीं पर कसोल डलॉग a से क्या हुआ फ मेरे पास प्रिंट हो गया दिस इज अ ब्लॉक पर यहीं पर अगर मैं लिख दूं लेट a इ 10 तो मेरे पास क्या आएगा एरर आएगा कि आप दोबारा से लेट वाले वेरिएबल को रीडिफाइन नहीं कर सकते ब्लॉक के अंदर पर अगर मुझे इसको रीडिफाइन ही करना है तो मैं क्या कर सकती हूं एक नया ब्लॉक बना सकती हूं नई ब्लॉक के अंदर आई कैन राइट लेट a इ 10 और फिर हम कसोल डलॉग करके अपने नए a को प्रिंट करवा सकते हैं तो यह अलग ब्लॉक हो गया यह अलग ब्लॉक हो गया कर्ली ब्रेसे जहां से शुरू हो जाते हैं वहां से नया ब्लॉक शुरू हो जाता है तो अब मेरे पास कोई एरर नहीं आएगा और मेरे पास पहली फाइव की वैल्यू भी प्रिंट होके आएगी दूसरी 10 की वैल्यू भी प्रिंट होके आएगी तो इस तरीके से हमारे ब्लॉक्स काम करते हैं पर ब्लॉक के बारे में अभी ज्यादा कंफ्यूज नहीं होना ना इसके ज्यादा डिटेल में अभी हम जाएंगे बाद में फंक्शंस नाम का एक इंटरेस्टिंग टॉपिक हम पढ़ेंगे वो जब हम पढ़ रहे होंगे तब हम ब्लॉक्स के बारे में डिटेल में पढ़ेंगे अभी के लिए ये जान लेना है जब भी वेरिएबल को डिफाइन करेंगे वर होता था पुराना तरीका नया तरीका मॉडर्न तरीका हां ये जो एकमा स्क्रिप्ट है यानी 2015 के अंदर जो चेंजेज आए हैं इसको मॉडर्न जावास्क्रिप्ट भी बोलते हैं यानी नई तरीके की जावास्क्रिप्ट इसके अंदर हम लेट और कॉन्स्ट को यूज करते हैं टू डिफाइन आवर वेरिएबल नेक्स्ट हम बात करने वाले हैं अबाउट समथिंग इंटरेस्टिंग कॉल्ड डेटा टाइप्स अब जावास्क्रिप्ट के अंदर वेरिएबल तो हमने देख लिए और ये भी देख लिया हर वेरिएबल के अंदर डिफरेंट तरीके का डाटा हम स्टोर करा सकते हैं पर ये जो डिफरेंट तरीके का डाटा है हर तरीके के डाटा को अपना अपना टाइप होता है इसको एग्जांपल के तौर पे फॉर एग्जांपल हमारे पास हमारी linked-list अगर हमारे पास कोई फॉलो बटन होता है तो हमने किसी को फॉलो किया है या फॉलो नहीं किया या हमारे कौन-कौन फॉलोअर्स हैं वह सारी इंफॉर्मेशन किस तरीके की हो सकती है वो बुलियन तरीके की हो सकती है या तो हमने किसी को फॉलो किया है ट्रू या फिर हमने किसी को फॉलो नहीं किया फॉल्स तो अलग-अलग डाटा होता है उसे अलग-अलग टाइप में हम क्लासिफाई कर सकते हैं ये तो हो गया सोशल मीडिया का एग्जांपल आप किसी भी वेबसाइट का एग्जांपल ले सकते हो हर वेबसाइट के ऊपर अलग-अलग टाइप ऑफ डाटा है जिसको हमें स्टोर करना पड़ सकता है तो जब भी हम जावास्क्रिप्ट सी सख रहे हैं सिर्फ ऐसे नहीं सीखना कि ठीक है थ्योरी को हम सीख रहे हैं हमारे पास डे टू डे बेसिस में बहुत सारी वेबसाइट्स बहुत सारी एप्स है जिनको हम यूज कर रहे होते हैं वो जो सारी की सारी एप्स हैं उनको किसी ना किसी तरीके से जावास्क्रिप्ट से भी क्रिएट किया जा सकता है तो हमें यह सोचना है कि अगर मुझे जावास्क्रिप्ट में इस ऐप के डाटा को लिखने के लिए स्टोर करने के लिए वेरिएबल को यूज करना होता तो हम किस तरीके से यूज करते तभी हम ऐसा माइंडसेट बिल्ड करेंगे कि चीजों को जावास्क्रिप्ट में कैसे सोचे तो यहां पर हम एक सोशल मीडिया ऐप को सोचने की कोशिश कर रहे हैं मुझे अगर लिंक न बना बनाना होता तो मैं जावास्क्रिप्ट के अंदर कैसे डेटा को स्टोर कराता है या स्टोर कराती अब यहां पर जावास्क्रिप्ट के अंदर डिफरेंट डिफरेंट डेटा टाइप्स होते हैं यानी अलग-अलग तरीके का डेटा स्टोर कराया जा सकता है और डेटा टाइप्स को हम दो कैटेगरी के अंदर डिवाइड करते हैं एक होता है हमारे प्रिमिटिव डाटा टाइप्स प्रिमिटिव डेटा टाइप्स फिक्स्ड होते हैं एक लैंग्वेज के अंदर फिक्स्ड होते हैं कि ये हमारे सारे के सारे प्रिमिटिव डेटा टाइप्स हैं और ये सेवन प्रिमिटिव डेटा टाइप्स होते हैं जावास्क्रिप्ट के अंदर दूसरे होते हैं हमारे नॉन प्रिमिटिव डेटा टाइप्स नॉन टिव डेटा टाइप्स के अंदर हमारे पास ऑब्जेक्ट्स आ जाती है बाकी ऑब्जेक्ट्स के बारे में बाद में हम डिटेल में पढ़ेंगे अभी के लिए इतना ज्यादा कंफ्यूज नहीं होना सबसे पहले बात करते हैं अपने प्रिमिटिव डेटा टाइप्स के बारे में सेवन डेटा टाइप्स होते हैं सबसे पहला होता है नंबर नंबर को हमने ऑलरेडी देखा हुआ है अगर हमने कोई एक वेरिएबल लिया लेट एज इ इक्वल टू 24 नाउ व्हाट इज दिस एज दिस इज अ न्यूमेरिकल डेटा टाइप अगर हम हमने सिर्फ इतना लिखा रिफ्रेश किया यहां पर हम चाहे तो एज को एक्सेस कर सकते हैं इवन दो हमने उसे यहां डिक्लेयर किया यहां पर एज को एक्सेस कर सकते हैं एज की वैल्यू है 24 अगर मुझे इस वेरिएबल का टाइप देखना है डाटा टाइप देखना है तो हम लिख सकते हैं जावास्क्रिप्ट के अंदर टाइप ऑफ फिर अपने वेरिएबल का नाम तो मैंने लिखा टाइप ऑफ एज और एंटर किया तो हमारे पास क्या आया नंबर यानी इस वेरिएबल का टाइप है नंबर कल को अगर हम एक और वेरिएबल बनाते हैं लेट प्राइस इ इक्वल टू 100.00 सेव किया इसे क्लियर कर लेते हैं कंट्रोल के से और यहां हमने लिखा प्राइस प्राइस इज नॉट डिफाइंड ओके हमें रिफ्रेश करना पड़ेगा हमने लिखा प्राइस रिफ्रेश करने से सारे नए वेरिएबल आ जाएंगे तो प्राइस हमारे पास यह है और हम लिख सकते हैं टाइप ऑफ प्राइस तो हमारे पास यह भी प्राइस जो आता है नंबर आता है तो नंब इस तरीके के हो सकते हैं नंबर्स चाहे तो नेगेटिव भी हो सकते हैं पॉजिटिव भी हो सकते हैं किसी भी तरीके से उसके अलावा सेकंड टाइप जो हमारे पास होता है दैट इज अ स्ट्रिंग डाटा टाइप हमने एक वेरिएबल बनाया फुल नेम फुल नेम इज इक्वल टू टोनी स्टार्क इस तरीके से हमने ने कोई नाम लिखा सेव किया रिफ्रेश किया यहां पर हम फुल नेम को प्रिंट करवाएंगे तो हमारे पास टोनी स्टार्क आ जाएगा और साथ के साथ हम टाइप ऑफ फुल नेम को अगर प्रिंट करवाएंगे तो हमारे पास आ जाएगा स्ट्रिंग सो दिस इज अ स्ट्रिंग डाटा टाइप तीसरा होता है हमारे पास बुलियन बुलियन के अंदर फॉर एग्जांपल फॉलो अगर हम चेक कर रहे इज फॉलो को अगर हमने ट्रू कर दिया फॉल्स भी कर सकते हैं रिफ्रेश किया तो इज फॉलो की वैल्यू तो हमारे पास आ ही गई ट्रू साथ के साथ हम टाइप और इज फॉलो को चेक कर सकते हैं एंड दिस इज गोइंग टू बी बलि इसके अलावा हमारे पास अनडिफाइंड भी होता है बाय डिफॉल्ट सारे वेरिएबल अनडिफाइंड होते हैं जब तक उनके अंदर कोई वैल्यू नहीं होती यहां पे अगर हम लिख दे लेट x और फिर सिंपली हमने लिखा लेट x रिफ्रेश किया x की वैल्यू प्रिंट करवाएंगे तो x की वैल्यू है अनडिफाइंड और टाइप ऑफ x देखेंगे तो वो भी है अनडिफाइंड जिस वेरिएबल के अंदर कोई वैल्यू ही नहीं डाली वो तो अनडिफाइंड होगा उसके अलावा हमारे पास नल भी होता है नल एक स्पेशल वैल्यू होती है अगर हमने लिखा लेट x इ ू नल सेव किया रिफ्रेश किया x की वैल्यू प्रिंट करवाएंगे नल टाइप ऑफ x प्रिंट करवाएंगे ऑब्जेक्ट अब नल जो है अपने आप में x हमारे पास एक ऑब्जेक्ट होती है ईवन दो यहां पर हमारे पास ऑब्जेक्ट प्रिंट होके आ रहा है पर फिर भी नल को हम अलग से अपना एक प्रिमिटिव डेटा टाइप की तरह काउंट करते हैं नल का मतलब होता है एब्सेंट ऑफ एन ऑब्जेक्ट यानी ऑब्जेक्ट होनी चाहिए थी पर अभी नल है यहां पे अब नल क्या होता है इसके स्पेसिफिक मीनिंग में अभी हम नहीं जाएंगे इसे हम बाद में जाके एक्सप्लोर कर रहे होंगे इसके अलावा दो और हमारे पास प्रिमिटिव डेटा टाइप्स होते हैं वैसे इतने ज्यादा फ्रीक्वेंसी बिग इंट से काफी क्लियर है हम बिग इंटी जर्स को एक तरीके से स्टोर कराने की कोशिश करते हैं लेट x इज इक्वल टू हम लिखते हैं बिग इंट और बिग इंट के अंदर 1 2 3 इस तरीके से हम कोई भी वैल्यू पास कर सकते हैं सेव किया रिफ्रेश किया वी कैन टाइप x तो बिग इंट जहां पे होता है वहां प लास्ट में आपको n दिखाई देगा और हम लिख सकते हैं टाइप ऑफ x व्हिच इज गोइंग टू बी बिग इंट उसी तरीके से हमारे पास सिंबल होता है लेट y इ इक्वल टू सिंबल और इसके अंदर हम लिख सकते हैं हेलो एंड y की अब अगर हम वैल्यू प्रिंट करवाए तो इट विल बी अ सिंबल सेज हेलो एंड टाइप ऑफ y को अगर देखें तो दिस इज गोइंग टू बी अ सिंबल बट बिग इंट और सिंबल के हम ज्यादा डिटेल में नहीं जाएंगे क्योंकि शायद ही रेयरली आप इनको एनकाउंटर करोगे बाकी इनको हम बाद में देख लेंगे अगर कहीं पर इन्हें हम यूज करते हैं तो ये तो हो गए हमारे सारे प्रिमिटिव डेटा टाइप्स वीी हैव सेवन प्रिमिटिव डेटा टाइप्स इसके अलावा हमारे पास नॉन प्रिमिटिव डेटा टाइप में आती है हमारी ऑब्जेक्ट्स ऑब्जेक्ट्स की ही सब कैटेगरी ऑब्जेक्ट्स के अंदर ही हमारे पास कुछ कैटेगरी अरेज की होती हैं कुछ कैटेगरी फंक्शंस की होती हैं ये विचित्र से दिखने वाले नाम हैं इनके मतलब अगर हमें नहीं समझ में आ रहे अभी कोई परेशानी वाली बात नहीं है धीरे-धीरे आगे आने वाले चैप्टर्स के अंदर सारी चीजें क्लियर हो जाएंगी पर एरे और फंक्शन जिनको हम बाद में पढ़ेंगे वो दोनों ऑब्जेक्ट्स की कैटेगरी के अंदर आते हैं अभी के लिए ऑब्जेक्ट्स की अगर बात करें तो ऑब्जेक्ट को हम ऐसे सोच सकते हैं इट इज अ कलेक्शन इट इज अ कलेक्शन ऑफ वैल्यूज मतलब बहुत सारी वैल्यूज को अगर हमें सेव करवाना है तो उसको कलेक्शन को हम ऑब्जेक्ट नाम देते हैं फॉर एग्जांपल अगर हमें किसी स्टूडेंट के लिए कोई स्टूडेंट है उसके लिए हमें उसकी इंफॉर्मेशन स्टोर करानी है स्टूडेंट के लिए हमें उसका नेम स्टोर कराना है नेम क्या हो सकता है नेम स्ट्रिंग टाइप का हो सकता है उसके एज स्टोर करानी है एज क्या हो सकती है एज नंबर टाइप की हो सकती है उसका मार्क स्टोर कराने मार्क्स उसको कह लो या परसेंटेज कह लो ये भी हमारी नंबर टाइप की हो सकती है हमें हो सकता है कि इस साल स्टूडेंट पास हुआ नहीं पास हुआ तो इज पास इस तरीके का हम कोई वेरिएबल बना सकते हैं उसके अंदर बुलियन वैल्यू स्टोर करा सकते हैं तो ये सारी की सारी क्या है ये सारी की सारी अलग-अलग वैल्यूज हैं जो प्रिमिटिव टाइप्स में है पर इन्हीं का अगर हम एक कलेक्शन बना दें किसी स्टू स्टूडेंट के लिए तो उसे हम कह देंगे एक ऑब्जेक्ट और जनरली जो हमारी ऑब्जेक्ट होती है उसके अंदर की वैल्यू पेयर स्टोर होते हैं की कोलन वैल्यू इस तरीके से हम अपनी वैल्यूज को स्टोर कराते हैं यानी पहले जिस तरीके से हम वेरिएबल को नाम देते हैं वेरिएबल यानी हमारी एज क्या होगी हमारी एज 24 के इक्वल हो जाएगी बीच में कॉलन लगा दो हमारा नेम क्या होगा हमारा नेम मान लो राहुल के इक्वल हो गया बीच में कॉलन लगा दो तो इस तरीके से एक ब्लॉक के अंदर कर्ली ब्रेसे के अंदर हम इन्हें जोड़ के रखते हैं कलेक्शन बनाते हैं अलग-अलग वेरिएबल को हम बनाएंगे और इन्हें एक कलेक्शन बना देंगे और इस कलेक्शन को हम नाम दे देंगे ऑब्जेक्ट तो स्टूडेंट वाला एक कलेक्शन बनाने के लिए यानी किसी भी ऑब्जेक्ट को बनाने के लिए जनरली हम ऑब्जेक्ट्स को कॉन्स्ट से डिक्लेयर करते हैं आप चाहे तो लेट से भी कर सकते हैं हम यहां पे लिख सकते हैं अपनी अपनी ऑब्जेक्ट का नाम हमारी ऑब्जेक्ट का नाम है स्टूडेंट तो जैसे हम कोई नॉर्मल वेरिएबल डिफाइन करते हैं वैसे ही लिखते हैं कंस्ट अपने वेरिएबल का नाम इज इक्वल टू और फिर लिखते हैं कर्ली ब्रेसस और कर्ली ब्रेसस के अंदर हम अपनी ऑब्जेक्ट को डिक्लेयर करना स्टार्ट करते हैं हमारी ऑब्जेक्ट के अंदर स्टूडेंट ऑब्जेक्ट के अंदर एक हम नेम डिक्लेयर करेंगे या नेम की जगह इसको हम फुल नेम भी कह सकते हैं फुल नेम डिक्लेयर करेंगे इसको हम नाम दे सकते हैं राहुल कुमार हम एज लिख सकते हैं एज इज गोइंग टू बी 20 इयर्स इसके अलावा हम मार्क्स लिख सकते हैं या इसको हम सीजीपीए कह देते हैं सीजीपीए कितनी हो जाएगी सीजीपीए मान लो हो गई 8.2 इस तरीके से कोई सीजीपीए हो गई उसके अलावा हमें इज पास कोई वेरिएबल बनाना है बुलियन टाइप का तो इसको हम लिख सकते हैं ट्रू तो ये अलग-अलग चार अलग-अलग वेरिएबल तो हो गए पर इन सारे वेरिएबल को कलेक्ट करके हमने गुच्छा बना दिया जिसको हमने नाम दे दिया स्टूडेंट और यहां पे हम लगा देंगे कलन इसको सेव कर लेते हैं अब ये जो स्टूडेंट होगा ये हमारे लिए ऑब्जेक्ट है इसको हम प्रिंट करवा सकते हैं रिफ्रेश किया यहां मैंने लिख दिया स्टूडेंट तो स्टूडेंट की वैल्यू इस बार थोड़ी सी अलग हमारे पास प्रिंट होकर आई दिस इज बेसिकली माय स्टूडेंट वैल्यू ए जिसके अंदर 20 है सीजीपीए यह है फुल नेम यह है इस पास ये है और अगर मैं देखूं टाइप ऑफ स्टूडेंट हमारे पास प्रिंट होके आएगा ऑब्जेक्ट तो स्टूडेंट इज नाउ एन ऑब्जेक्ट और ऑब्जेक्ट मतलब कलेक्शन ऑफ डिफरेंट वेरिएबल और ये वेरिएबल अलग-अलग टाइप के हो सकते हैं हमने देख लिया हम चाहे तो नंबर्स के साथ स्ट्रिंग को बुलियन को हर तरीके के अलग-अलग वैल्यूज को कंबाइन कर सकते हैं अब स्टूडेंट के अंदर मान लो मुझे सिर्फ नेम चाहिए तो हम उसे एक्सेस करने के लिए लिख सकते हैं स्टूडेंट और फिर लिख सकते हैं अपने स्क्वायर ब्रैकेट्स और यहां पे डबल कोट्स डबल कोट्स के अंदर हम लिख सकते हैं फुल नेम एंटर किया तो हमारे पास क्या आ गया राहुल कुमार प्रिंट होके आ गया एक और तरीका होता है ऑब्जेक्ट्स के अंदर कीज को एक्सेस करने का कीज कहने का क्या मतलब है जब हम ऑब्जेक्ट की बात करते हैं ये फुल नेम क्या है की की है एज क्या है की है सीजीपीए क्या है की है ये राहुल कुमार क्या है वैल्यू है 20 क्या है वैल्यू है 8.2 क्या है वैल्यू है तो ऑब्जेक्ट के अंदर हमारे पास की वैल्यू के पेयर्स होते हैं और किसी भी ऑब्जेक्ट के अंदर पर्टिकुलर की को एक्सेस करने के दो तरीके होते हैं एक तो है कि हम लिखें ऑब्जेक्ट डॉट अपनी की का नाम या फिर हम लिखें ऑब्जेक्ट स्क्वायर ब्रैकेट अपनी की का नाम अपने डबल कोट्स के अंदर दोनों ही तरीके सही तरीके हम चाहे तो यहां से कसोल डलॉग करवा सकते हैं अपना स्टूडेंट के अगर फॉर एग्जांपल मुझे एज प्रिंट करवानी है तो स्टूडेंट की एज हम इस तरीके से भी प्रिंट करवा सकते हैं सेव कर लिया रिफ्रेश किया स्टूडेंट की एज आ गई 20 के इक्वल या फिर हम सीधा लिख सकते हैं डॉट एज सेव किया रिफ्रेश किया अभी भी एज आ गई 20 के इक्वल एक चीज याद रखनी है जब हम डॉट को यूज करते हैं तब हमें कोई कोट्स यूज नहीं करने यानी ये डबल कोट्स भी नहीं लगाने हमें सिंगल कोट्स भी नहीं लगाने पर पर जब हम स्क्वायर ब्रैकेट को यूज करते हैं तब हमें कोड्स को यूज करना पड़ेगा तब अगर हम ऐसे लिख देंगे रिफ्रेश करेंगे हमारे पास एरर आ जाएगा क्योंकि एज को वो दूसरे किसी वेरिएबल की तरह समझेगा तो इसीलिए यहां पे हमें कोड्स लगाने होंगे सेव किया रिफ्रेश किया वैल्यू सही आ गई अगर मुझे सीजीपीए को देखना है तो हम यहां लिख देंगे सीजीपीए ये स्ट्रिंग नहीं है ये हमारे वेरिएबल का नाम है अपने स्क्वायर ब्रैकेट्स के अंदर रिफ्रेश किया सीजीपीए की वैल्यू आ गई अच्छा इसके साथ-साथ हमने एक बार वेरिएबल को नाम दिया हमें पता है हम उसकी वैल्यू को चेंज कर सकते हैं फॉर एग्जांपल मैंने कोई वेरिएबल बनाया होता लेट a = 25 तो कल को मैं a की वैल्यू को 10 भी कर सकती थी बिल्कुल वैलिड होता ये नई वैल्यू असाइन करने का नया तरीका है पर ऑब्जेक्ट्स के अंदर कैसे नई वैल्यू असाइन करते हैं ऑब्जेक्ट के अंदर अगर मुझे मान लो कल को एज जो है इंक्रीज करनी है बाय वन तो हम लिख सकते हैं स्टूडेंट की एज इससे क्या होता है स्टूडेंट की एज को हम एक्सेस कर पाएंगे और उसके अंदर हम इंक्रीज कर कर देंगे + 1 तो स्टूडेंट की एज के अंदर इंक्रीज कर दिया मैंने + 1 और यही जो वैल्यू है ये इसी वेरिएबल को हम असाइन कर देंगे यानी पुरानी जो आपकी एज थी उसके अंदर प्लस व कर दिया तो यहां से नई वैल्यू आएगी 21 और उसे लेफ्ट की तरफ असाइन कर दिया असाइनमेंट ऑपरेटर से तो ये 21 हो गया अब जब इसे प्रिंट करवाएंगे तो क्या प्रिंट होगा 21 प्रिंट होगा सेव कर दिया रिफ्रेश किया ओके सीजीपीए यहां पे प्रिंट करवा रहे हैं मुझे एज को प्रिंट करवाना है सेव किया रिफ्रेश किया हमारे पास एज आ गई 21 के इक्वल तो इस तरीके से किसी भी वैल्यू को चेंज किया जा सकता है कल को राहुल कुमार की जगह नेम में अगर हमें करना हो राहुल शर्मा नया ही नेम निकालना है तो हम इसे लिख सकते हैं राहुल शर्मा और फिर नए नेम को हम प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया यह क्या आ गया राहुल शर्मा आ गया तो यह हमारा प्रॉपर एक जावास्क्रिप्ट का कोड है जिसमें हमने एक स्टूडेंट ऑब्जेक्ट बनाई उसके अंदर कुछ चेंजेज किए और फिर उसे प्रिंट करवाया एक चीज आपके दिमाग को थोड़ा सा अशांत कर रही होगी अभी मैं पॉइंट आउट भी कर सकती हूं क्योंकि यहां पर स्टूडेंट एक ऑब्जेक्ट है और उसके आगे हमने कंस्ट यूज किया है फिर भी हम यहां पे उसके नेम को चेंज कर पा रहे हैं अब ये क्या अलग सी चीज है क्योंकि अगर मैंने कोई नॉर्मल वेरिएबल बनाया होता कॉन्स्ट और उसको मैंने नाम दिया होता नेम इज इक्वल टू और यहां पे मैंने लिखा होता राहुल और कल को उस राहुल को फॉर एग्जांपल इस नेम को हम बनाने की कोशिश करते सचिन तो क्या होता हमारे पास यहां एरर आ जाता इनफैक्ट इतना जो कोड है सिर्फ इतने कोड में एरर आएगा बाकी कोई प्रॉब्लम नहीं है कोई नॉर्मल वेरिएबल है और उसको नई वैल्यू हम असाइन कर रहे हैं रिफ्रेश किया एरर आ गया असाइनमेंट टू कांस्टेंट वेरिएबल जावास्क्रिप्ट के अंदर जो एरर होते हैं पढ़ के समझ आ जाता है क्या है कि मतलब हम किसी कांस्टेंट वेरिएबल के अंदर नई वैल्यू असाइन करने की कोशिश कर रहे हैं कहां पे लाइन नंबर नाइन पे लाइन नंबर नाइन क्या है ये लाइन है तो यहां पे कांस्टेंट वेरिएबल के अंदर तो आप चेंज नहीं कर सकते पर कांस्टेंट ऑब्जेक्ट्स की कीज के अंदर आप चेंज कर सकते हो तो ऑब्जेक्ट जो होती है क्योंकि वह एक कलेक्शन है तो आपको पूरे कलेक्शन को चेंज करना पड़ेगा एक ऑब्जेक्ट को चेंज करने के लिए सिर्फ नाम को चेंज करने से ऑब्जेक्ट चेंज नहीं हो जाती सिर्फ एज को चेंज करने से ऑब्जेक्ट चेंज नहीं हो जाती तो ऑब्जेक्ट जो है उनको चेंज करके उनके अंदर एरर लाने के लिए हमें पूरी ऑब्जेक्ट को चेंज करना पड़ता है उसके एड्रेस को चेंज करना पड़ता है मेमोरी में अब यह चीज थोड़ी सी लेट को हम अपडेट कर सकते हैं कॉन्स्ट वेरिएबल को अपडेट नहीं कर सकते पर हां कॉन्स्ट में अगर ऑब्जेक्ट हो तो उस ऑब्जेक्ट की की को हम अपडेट कर सकते हैं इतना याद रख लेना है ऑब्जेक्ट की की को क्यों अपडेट कर पा रहे हैं या उसके अंदर कब एरर हमारे पास आना स्टार्ट होगा वो हम बाद में ऑब्जेक्ट्स के ऊपर जब डेडिकेटेड अपना चैप्टर पढ़ेंगे तब हम बात कर रहे होंगे तो अभी के लिए हमने वेरिएबल से रिलेटेड डेटा टाइप से रिलेटेड काफी सारी इंपॉर्टेंट चीजें हैं जो पढ़ ली है एंड आज के लिए हमने अच्छा खासा जो है मेहनत कर ली है जेएस के ऊपर एंड इतने कॉन्सेप्ट्स आर गुड इनफ फॉर आवर फर्स्ट लेक्चर तो आई होप कि जावास्क्रिप्ट पढ़ने में हमें खूब सारा मजा आया होगा और नेक्स्ट चीज जिसकी तरफ हम बढ़ने वाले हैं वो होंगे हमारे कुछ प्रैक्टिस क्वेश्चंस अब प्रैक्टिस क्वेश्चन के अंदर सबसे पहला क्वेश्चन हमारे पास है कि हमें amazonbusiness.in टू स्टोर इंफॉर्मेशन शोन इन द पिक्चर पिक्चर के अंदर मेरे पास जो जो इंफॉर्मेशन है उसको स्टोर करवाने के लिए किस तरीके की ऑब्जेक्ट हम क्रिएट कर सकते हैं वो हमें सोचना है आप चाहे तो हम दो प्रैक्टिस क्वेश्चन सॉल्व करने वाले हैं इसका आप एग्जांपल देख सकते हैं इसको सॉल्व करने का आप तरीका देख सकते हैं और सेकंड वाले को अपना खुद का टाइम लगा के हम सॉल्व कर सकते हैं अब इसके अंदर सबसे पहले तो हम इंडिविजुअल वेरिएबल से ही स्टार्ट करेंगे इंडिविजुअल वेरिएबल देख लो क्या-क्या बन सकते हैं फॉर एग्जांपल इसका एक नाम है जो मुझे स्टोर करना पड़ सकता है हर प्र प्रोडक्ट का अपना नाम होता है इसका भी कुछ नाम है इसके अंदर एक रेटिंग नाम की चीज है इसके अंदर एक डील ऑफ द डे नाम की चीज है कि क्या इस प्रोडक्ट के ऊपर डील अभी चल रही है या नहीं चल रही और साथ के साथ इसका एक प्राइस है ऑफर भी है कि ऑफर कितने परसेंट का ऑफर है तो इस तरीके से बहुत सारी इंफॉर्मेशन है सारी इंफॉर्मेशन हमें स्टोर कराने की जरूरत नहीं है अभी के लिए हम चाहे तो इस डील को इग्नोर कर सकते हैं हम ये चार इंफॉर्मेशन स्टोर कराएंगे नाम क्या है रेटिंग कितनी है ऑफर कितना है और प्राइस क्या है अभी इन सबका टाइप भी लिख लेते हैं नेम क्या होगा नेम हमारा स्ट्रिंग टाइप का होगा रेटिंग क्या होगी रेटिंग को हम नंबर रख सकते हैं रेटिंग की वैल्यू वन से लेके फाइव के बीच में कुछ होगी ऑफर क्या होगा ऑफर भी एक नंबर होगा कितने परसेंट का ऑफर चल रहा है प्राइस क्या होगा प्राइस इज आल्सो गोइंग टू बी अ नंबर अगर हम डील को भी स्टोर करवाते तो इज डील हम एक वेरिएबल बना सकते थे इस डील एक बुलियन वैल्यू होती ट्रू होता तो मतलब डील चल रही है डील ऑफ द डे है ऑफर इसके ऊपर और और फाल्स होता तो डील ऑफ द डे नहीं है तो बुलियन वैल्यू को अभी के लिए इग्नोर कर सकते हैं तो ये चार वैल्यूज हैं जिनको हमें प्रिंट करवाना है तो हम अपनी ऑब्जेक्ट को कुछ इस तरीके से बना सकते हैं या इनफैक्ट डायरेक्टली कोड में लिखते हैं वी आर गोइंग टू क्रिएट एन ऑब्जेक्ट कॉन्स्ट और इसको नाम देंगे प्रोडक्ट प्रोडक्ट हमारी ऑब्जेक्ट हो गई इज इक्वल टू इसके अंदर क्या-क्या की वैल्यू पेयर्स होंगे सबसे पहले तो प्रोडक्ट का नेम हम लिख सकते हैं इसको नेम भी लिख सकते हैं तो इसको टाइटल भी लिख सकते हैं जो हमारे दिमाग में सबसे पहले आ रहा है लद नेम नेचर आता है तो नेम भी लिख सकते हैं इसे अभी के लिए बड़ा सा पार्कर जॉटर स्टैंडर्ड सीटी बॉल पेन मैं नहीं दूंगी इसको सिंपल सा हम बॉल पेन बोलेंगे बॉल पेन हमारा टाइटल हो सकता है उसके बाद हम इसके अंदर रेटिंग लिख सकते हैं रेटिंग के अंदर हमें पता है हमेशा फाइव स्टार में से कोई रेटिंग होती है तो रेटिंग के अंदर अभी फोर स्टार टाइप रेटिंग दिख रही है तो फोर वैल्यूज के अंदर स्टोर करा सकते हैं हमारे पास एक ऑफर नाम की चीज है ऑफर के अंदर हम वैल्यू स्टोर करा सकते हैं अभी 5 पर का ऑफर है तो फ लिख देते हैं एक हमारे पास प्राइस है प्राइस के अंदर हम लिख सकते हैं 270 तो इस तरीके से डेसीमल कोई वैल्यू है नहीं तो इस तरीके से हमारी ये प्रोडक्ट और सेमीकलन ये प्रोडक्ट नाम की ऑब्जेक्ट हो गई हम चाहे तो इसकी वैल्यू को प्रिंट करवा सकते हैं हमने लिख दिया यहां पे प्रोडक्ट सेव कर लेंगे रिफ्रेश करेंगे हमारे पास हमारा प्रोडक्ट आ गया सारी की सारी वैल्यूज हैं हम अगर देखना चाहे इसका टाइप तो टाइप ऑफ प्रोडक्ट विल बी एन ऑब्जेक्ट अच्छा एक और चीज स्ट्रिंग्स के बारे में जावास्क्रिप्ट में कि स्ट्रिंग्स के अंदर अगर आप एी जैसे नॉर्मल नंबर्स होते हैं नंबर्स में अगर आप 1 प् 2 करेंगे जावास्क्रिप्ट में तो आपको फाइनल आंसर मिलेगा थ आप 2 माइव करोगे तो आपको फाइनल आंसर मिलेगा वन इस तरीके से मैथ की जा सकती है जावास्क्रिप्ट में इसके बारे में बाद में पढ़ेंगे डिटेल में पर मैथ की जा सकती है वहीं पे आप स्ट्रिंग को अगर करेंगे कि 1 2 3 प् 1 इसका क्या आउटपुट होगा वैसे दिखाई भी दे रहा है इसका आउटपुट होगा 1 2 31 यानी स्ट्रिंग क्या करती है अगर स्ट्रिंग के साथ प्लस में आप कुछ नंबर लिखते हैं तो वो स्ट्रिंग के अंदर जुड़ जा जाता है ऐड नहीं होता स्ट्रिंग के अंदर जुड़ जाता है तो इसीलिए स्ट्रिंग्स यूनिक होती हैं स्पेशल होती हैं जावास्क्रिप्ट में लेट मी क्लियर दिस अगर मैंने लिखा ए बी स d + 1 2 3 तो क्या हो गया ये बन जाएगा ए ब सडी 1 2 3 और यहीं पर मैंने लिख दिया 1 2 3 + 1 2 3 तो ये बन जाएगा 1 2 3 एंड 1 2 3 तो स्ट्रिंग के साथ जब भी आप कुछ ऐड करते हैं तो वो चीज ऐसा नहीं है स्ट्रिंग भी नंबर बन जाएगा फिर नंबर नंबर से ऐड होके हो जाएगा ये 2 46 हो जाएगा ऐसा नहीं होगा स्ट्रिंग के बाद में वो नं नंबर भी स्ट्रिंग में ही कन्वर्ट होके नंबर की तरह जुड़ जाएगा तो एक स्पेशल चीज होती है जावास्क्रिप्ट स्ट्रिंग्स के बारे में अब नेक्स्ट अपने सवाल की तरफ बढ़ते हैं नेक्स्ट सवाल में भी सिमिलर सा ही हमें काम करना है मुझे क्या दि है मुझे एक तो बहुत ही अच्छा है नहीं कर पाते तो कोई बात नहीं अभी हम डिस्कस कर लेते हैं तो सवाल को सॉल्व करने के लिए सबसे पहले तो हमें पता है इंडिविजुअल इंफॉर्मेशन देख लो इंडिविजुअल इंफॉर्मेशन में क्या है एक हमें पता है हमारी हर जो फॉलो का बटन हो सकता है तो इज फॉलो हम फॉलो कर रहे हैं नहीं कर रहे उसकी इंफॉर्मेशन हम स्टोर करा सकते हैं इसके अलावा और भी काफी सारी डिटेल्स हैं नंबर ऑफ पोस्ट में हम पोस्ट नाम का एक वेरिएबल बना सकते हैं जिसके अंदर कितने नंबर ऑफ पोस्ट हैं उसको स्टोर करा सकते हैं डिटेल्स नाम का एक वेरिएबल बना सकते हैं या इंफॉर्मेशन या बायो नाम का एक वेरिएबल बना सकते हैं उसमें बायो में क्या-क्या लिखा हो वो सारी चीजें अब ऐसे तो बहुत सारी इंफॉर्मेशन है हम क्या करेंगे चार वेरिएबल का एग्जांपल लेंगे सबसे पहले देख लो इंफॉर्मेशन क्या स्टोर करानी है फिर देख लो टाइप क्या-क्या है यूजर नेम का क्या टाइप होगा यूजर नेम का टाइप होगा स्ट्रिंग दिस विल बी स्ट्रिंग इस फॉलो का क्या टाइप होगा इसका टाइप होगा बुलियन फॉलोइंग का क्या टाइप होगा दिस विल बी अ नंबर फॉलोअर्स का क्या टाइप होगा दिस विल आल्सो बी अ नंबर अब इसको स्टोर कराने के लिए अपनी एक ऑब्जेक्ट बना लेते हैं लेट्स क्रिएट आवर न्यू ऑब्जेक्ट कॉन्स्ट इसको कह देते हैं प्रोफाइल प्रोफाइल इज इक्वल टू प्रोफाइल के अंदर सबसे पहले यूजर नेम आ जाएगा यूजर नेम यूजर नेम के अंदर हम स्टोर करा देंगे श्रद्धा खपरा इस तरीके से एक यूजर नेम हम चाहे तो डरेट करके भी स्टोर करा सकते हैं कॉमा उसके बाद सेकंड वेरिएबल पर आ जाते हैं नेक्स्ट चीज हम इस फॉलो को स्टोर करा सकते हैं इस फॉलो मान लो हमने कर दिया अभी फॉल्स उसके बाद हम फॉलोअर्स को स्टोर करा सकते हैं फॉलोअर्स मान लो कुछ भी रैंडम नंबर टूथ सेव करवा दिया हमने उसके बाद फॉलोइंग को स्टोर करा सकते हैं फॉलोइंग में भी हम कोई भी रैंडम नंबर ले सकते हैं तो इस तरीके से चार इंफॉर्मेशन हमने सेव करवा ली अब चाहे तो कंसोल के अंदर जाकर हम अपनी प्रोफाइल को प्रिंट करवा सकते हैं तो यह हमारी प्रोफाइल सारी की सारी इंफॉर्मेशन हमारे पास आ जाएगी जिसमें हर किसी में इंडिविजुअल वेरिएबल है अच्छा एक और स्पेशल चीज अगर हम टाइप ऑफ प्रोफाइल करेंगे टाइप ऑफ प्रोफाइल व क्या आएगा ऑब्जेक्ट आएगा हम सबको पता है पर हम अगर अलग से जाके या इनफैक्ट यहां पर मैं प्रिंट करवाती हूं कसोल डलॉग अगर हम करें टाइप ऑफ प्रोफाइल तो वह हमारे पास आएगा रिफ्रेश ऑब्जेक्ट पर अगर हमें हम करें टाइप ऑफ प्रोफाइल के अंदर यूजर नेम इस तरीके से प्रोफाइल यूजर नेम से यूजर नेम प्रिंट होता है और उसका टाइप क्या होगा इसे सेव कर लेते हैं रिफ्रेश करते हैं उसका टाइप होगा स्ट्रिंग तो यह वेरिएबल क्या है यह वेरिएबल अपने आप में एक स्ट्रिंग है इसी तरीके से इज फॉलो का हम चाहे तो टाइप देख सकते हैं रिफ्रेश किया इट विल बी अ बुलियन वैल्यू हम चाहे तो फॉलोअर्स का टाइप दे देख सकते हैं सेव किया रिफ्रेश किया इट विल बी अ नंबर तो इस तरीके से ऑब्जेक्ट के अंदर जो की वैल्यू पेयर्स हैं उनके अंदर भी हम अपने डेटा टाइप को इंडिविजुअल डेटा टाइप को चेक कर सकते हैं तो इस तरीके से आज के लेक्चर के अंदर हमने बहुत सारी डिफरेंट चीजें सीख लिए हैं जावास्क्रिप्ट के अंदर तो आई होप कि ये जो जावास्क्रिप्ट की हमारी नई जर्नी है इसके फर्स्ट लेक्चर में हमें काफी चीजें सीखने को मिली होंगी जो काफी इंटरेस्टिंग बनाती है हमारी प्रोग्रामिंग जर्नी की शुरुआत को हाय एवरीवन तो अब अपनी जावास्क्रिप्ट की जर्नी के अंदर हम शुरुआत करने वाले हैं अपने चैप्टर टू की चैप्टर टू के अंदर हम पढ़ेंगे अबाउट ऑपरेटर्स एंड कंडीशनल स्टेटमेंट्स अब लाइफ के अंदर रियल लाइफ के अंदर हमने बहुत सारी कंडीशंस अपनी डे टू डे लाइफ में देखी होंगी फॉर एग्जांपल अगर हम अपने वोटर आईडी कार्ड बनवाने जाएं या फिर अगर हम अपना लाइसेंस बनवाने जाएं तो हमें 18 प्लस की एज चाहिए होती है तो ये एक कंडीशन होती है अपना लाइसेंस बनवाने के लिए कि हमारी एज 18 प्लस होनी चाहिए अगर हमें फर्स्ट क्लास से सेकंड क्लास में जाना है सेकंड क्लास से थर्ड क्लास में जाना है तो हमारे जो मार्क्स होने चाहिए वो पासिंग मार्क्स होने चाहिए तो वो एक कंडीशन होती है अपनी क्लास को अपग्रेड करने की तो इसी तरीके से रियल लाइफ के अंदर भी बहुत सारी ऐसी कंडीशंस होती हैं जिनको कभी-कभार हमें अपने कोड के अंदर अपनी रियल लाइफ वेबसाइट्स के अंदर लाने की जरूरत पड़ती है और इसी तरीके की कंडीशंस को इंप्लीमेंट करने के लिए पहले हम ऑपरेटर्स को यूज़ करते हैं और उसी के बाद हम सीखेंगे कि कैसे हम कंडीशनल स्टेटमेंट्स को यूज़ कर सकते हैं अब कंडीशनल स्टेटमेंट से पहले एक और टॉपिक है जिसको हम टच करने वाले हैं जिसका नाम है कॉमेंट्स कॉमेंट्स जावास्क्रिप्ट के अंदर कोड का वो हिस्सा होते हैं जो एग्जीक्यूट नहीं होता मतलब अगर हम कुछ ऐसी चीज लिखना चाहते हैं जो एक्सप्लेन कर रही कि हमारा कोड क्या काम करता है बट वो कोड का पार्ट नहीं है तो उसे हम जावास्क्रिप्ट के अंदर या प्रोग्रामिंग लैंग्वेजेस के अंदर कॉमेंट्स कहते हैं अब एक कॉमेंट को लिखने से पहले सबसे पहले हम अपना बेसिक कोड सेटअप कर लेते हैं हमने क्या किया है जावास्क्रिप्ट नाम का वही अपना पुराना फोल्डर लिया हुआ है अभी इसके अंदर कोई फाइल नहीं है इसी फोल्डर को हमने अपने कंप्यूटर के अंदर खोला भी हुआ है विजुअली ये फोल्डर अभी खाली है तो विजुअल स्टूडियो कोड से क्या करेंगे इसके अंदर एक नई फाइल बनाएंगे इस फाइल को हम कहेंगे index.htm index.htm के बारे में लास्ट टाइम हमने बात की थी एक html5 फइल होती है कंट्रोल एंड एक्सक्लेमेशन प्रेस करने से हमारे पास यह चीज आ जाएगी यानी बॉयलर प्लेट कोड इसको हम कहते हैं बॉयलर प्लेट कहने का मतलब है कुछ बेसिक कोड मैं स्पेलिंग भी आपको बता देती हूं दिस इज कॉल्ड बॉयलर प्लेट कोड जो वीएस कोड हमारे लिए ऑटोमेटिक जनरेट कर देता है साथ के साथ हम एक दूसरी फाइल बनाएंगे जिसे हम कह सकते हैं फड जए 1js की जगह इसको हम कह देते हैं अपनी स्क्रिप्ट ड जए तो ये हमारी स्क्रिप्ट यानी जावास्क्रिप्ट कीड जए फाइल आ जाएगी बॉडी टैग से जस्ट बाद में एक स्क्रिप्ट टैग क्रिएट करते हैं इन्हें हम टैग्स कहते हैं के अंदर टैग्स बताते हैं कि आप किस चीज को लिखना चाहते हैं जैसे एक वेब पेज के ऊपर या पूरी जो वेबसाइट है उसके ऊपर जो भी कुछ डिस्प्ले होना चाहिए वो सारा का सारा इस बॉडी टैग के अंदर आता है बट अभी के लिए टैग्स के ज्यादा डिटेल में हमें नहीं जाना स्क्रिप्ट टैग के अंदर हम क्या करेंगे इस तरीके से एक लाइन लिखेंगे सोर्स एंड यहां हम लिख देंगे अपनी फाइल का नाम script.js इसे कर देंगे सेव तो बेसिकली हमारा ये जो थोड़ा सा ज़ूम इन करने के लिए कमांड एंड प्लस साथ में प्रेस करके मैंने ज़ूम इन कर लिया आपको करना है अगर आप विंडोज पे हैं तो आप कंट्रोल एंड प्लस वाला जो हमारा साइन होता है कीबोर्ड पे उसको प्रेस कर सकते हैं तो ये हमारा स्क्रिप्ट टैग हो गया अब कॉमेंट्स लिखने के लिए कॉमेंट्स बेसिकली हमारे कोड का वो हिस्सा होते हैं जो कभी एग्जीक्यूट नहीं होता उसको कहने का क्या मतलब है फॉर एग्जांपल मैंने यहां पर लिखा कल डलॉग यहां लिख देते हैं हेलो वर्ल्ड इस तरीके से मैंने एक लाइन लिखी इसे सेव कर लेते हैं एंड अपने फोल्डर के अंदर जब हम जाएंगे तो इस बार हमारे पास दो फाइल्स होंगी index.htm पर डबल क्लिक करेंगे तो ये हमारे ब्राउजर के अंदर खुल जाएगी अभी हमारा ब्राउजर हमारे पास क्रम है इंस्पेक्ट करके अपनी कंसोल विंडो जो है इसके ऊपर थोड़ा सा हम ज़ूम इन कर लेते हैं तो जूम इन हमने कर लिया यहां पे क्या प्रिंट होके आ रहा है यहां पे प्रिंट होके आ रहा है हमारे लिए हेलो वर्ल्ड अब ये तो आ गया हेलो वर्ल्ड पर इसी के सामने अगर हमने इस तरीके से दो डबल स्लैश लगा दिए और इसको सेव किया एंड जाके रिफ्रेश किया तो इस बार क्या आएगा इस बार हमारे पास कुछ भी प्रिंट होके नहीं आएगा तो बेसिकली ये अब कोड का वो हिस्सा हो गया जो कभी एग्जीक्यूट ही नहीं होगा जो कभी रन ही नहीं होगा जनरली जब भी हम कॉमेंट्स लिखते हैं तो कमेंट्स के अंदर हम डबल स्लैश से शुरुआत करते हैं तो अब हम यहां पर अपना कॉमेंट लिखना स्टार्ट कर सकते हैं सो दिस इज अ कॉमेंट अब जनरली कॉमेंट्स के अंदर हम कोड नहीं लिख रहे होते कॉमेंट्स के अंदर हम नॉर्मल इंग्लिश या चाहे तो इस तरीके से हिंदी कैसे हैं आप इस तरीके से हम हिंदी में भी चीजें लिख सकते हैं बट जनरली हम इंग्लिश के अंदर लिखना प्रेफर करते हैं बिकॉज कोडिंग इ समथिंग दैट इज ग्लोबल एंड कई बार आप ऐसी कोडिंग कम्युनिकेट के अंदर जाएंगे जहां पर शायद लोग हिंदी ना समझते हो तो मैक्सिमम लोग इंग्लिश के अंदर कम्युनि कर रहे होते हैं सो दिस इज अ सिंगल लाइन कॉमेंट दो तरीके के कॉमेंट हो सकते हैं एक जो हमें एक सिंगल लाइन के अंदर लिखना है दिस इज अ कॉमेंट जनरली हम कॉमेंट्स को यूज़ करते हैं अपने कोड को डिस्क्राइब करने के लिए कि हमारा कोड कर क्या रहा है तो मुझे अगर बताना है मेरा ये कोड क्या कर रहा है तो उसके लिए हम ऊपर एक कमेंट लिख सकते हैं दिस कोड प्रिंट्स हेलो वर्ल्ड इसे सेव कर लेते हैं रिफ्रेश करेंगे तो अब ये क्या कर रहा है ये प्रिंट कर रहा है हेलो वर्ल्ड को और वही चीज मैंने यहां पर अपने इस कोड के अंदर डिस्क्राइब कर दी है कॉमेंट्स के अंदर अगर हम कुछ भी टाइप कर देते हैं हम कुछ गलतियां कर देते दे हैं कुछ भी रैंडम मैंने इस तरीके से टाइप कर दिया तो वो क्या करेगा वो हमारे कोड के ऊपर जिस तरीके से कोड एग्जीक्यूट होगा उसके ऊपर कोई फर्क नहीं डालेगा जैसे रिफ्रेश किया मेरा कोड अभी भी वर्क कर रहा है बट यही सेम गलती अगर हमने एक्चुअल कोड में कर दी होती बिना कॉमेंट के सेव किया रिफ्रेश किया तो इस बार हमारे पास कुछ-कुछ एरर्स आने लग जाएंगे तो रैंडम चीजें जो हैं वो हम कॉमेंट्स के अंदर लिख सकते हैं पर लिखनी नहीं चाहिए कॉमेंट्स को भी हमें साफ सुथरा रखना चाहिए अपने नॉर्मल कोड की तरह ये हो गया हमारा सिंगल लाइन कॉमेंट मान लेते हैं कभी-कभार हमें कोई बड़े कॉमेंट्स लिखने होते हैं तो उस केस में हमारे कॉमेंट मल्टीपल लाइंस तक जाते हैं दिस इज अ कोड जैसे हमें लिखना है दिस इज अ कोड दैट प्रिंट्स हेलो वर्ल्ड ऑन आवर कंसोल विंडो इस तरीके से बहुत लंबा सा मुझे अगर कॉमेंट लिखना है तो या तो तरीका होगा कि दो सिंगल लाइन कॉमेंट्स लिखे जाए ये तरीका भी बिल्कुल सही है इसमें भी हमारे पास कोई एरर नहीं आएगा नहीं तो दूसरा तरीका हमारे पास होता है कि हम लिखें स्लैश स्टार इस तरीके से स्लैश स्टार तो हमारा एक नया कॉमेंट स्टार्ट हो जाता है और ये कॉमेंट मल्टीपल लाइंस तक जा सकता है तो अगर एक बार हमने स्लैश स्टार लिख दिया दिया तो हमारी सारी की सारी चीजें कॉमेंट बन जाएंगी और हम चाहते हैं कॉमेंट जहां पे खत्म हो वहां पे हम दोबारा लिखते हैं स्लैश यहां पर लिखेंगे हम स्टार स्लैश तो इस तरीके से इतना पार्ट हमारा एक कॉमेंट बन जाएगा इसको सेव कर लेते हैं रिफ्रेश करेंगे हमारा कोड अभी भी वर्क करेगा विदाउट एनी एरर तो इस तरीके से कॉमेंट्स को कभी भी हम लिख सकते हैं अपने कोड के अंदर किसी भी हिस्से को किसी भी पार्ट को डिस्क्राइब करने के लिए नेक्स्ट चीज जिसके बारे में हम बात करेंगे ये है हमारे ऑपरेटर्स अब ऑपरेटर्स का काम होता है प्रोग्रामिंग के अंदर टू परफॉर्म सम ऑपरेशन ऑन डाटा एंड एक और एडिशनल चीज मैं यहां पे बता देती हूं अगर एक बार जावास्क्रिप्ट के अंदर हमने ऑपरेटर सीख लि हमने कंडीशनल स्टेटमेंट सीख ली तो फिर चाहे बाद में जाके हम c+ प जैसी जावा जैसी पाइथन जैसी लैंग्वेज को कर रहे हैं वहां पे भी सेम लॉजिक अप्लाई होता है कंडीशनल स्टेटमेंट्स एंड ऑपरेटर्स का तो प्रोग्रामिंग के अंदर किसी भी एक लैंग्वेज में आप ये टॉपिक सीख लोगे ना वो हर जगह अप्लाई होगा एंड हर जगह हमें हेल्प कर रहा होगा तो ऑपरेटर्स डाटा के ऊपर कुछ ऑपरेशन परफॉर्म करने में हेल्प करते हैं अब ऑपरेशन क्या होता है फॉर एग्जांपल मैथ के अंदर हमने पढ़ा होगा a + b = c इस तरीके की कुछ स्टेटमेंट हमने पढ़ी होगी 4 + 5 = 9 इस तरीके की स्टेटमेंट हमने पढ़ी होगी जब भी हम a + b इस तरीके से कुछ लिखते हैं तो यहां पर इस पूरी की पूरी चीज को हम कहते हैं मैथ के अंदर एक एक्सप्रेशन इसको मैथ के अंदर भी एक्सप्रेशन कहते हैं और इसको प्रोग्रामिंग के अंदर भी एक्सप्रेशन कहते हैं और एक्सप्रेशन के अंदर जो हमारे वेरिएबल होते हैं या अगर मैंने लिख दिया 1 + 2 तो ये जो हमारी वैल्यूज होंगी इन्हें हम क्या कहेंगे इन्हें हम कहते हैं ऑपरेंट और ये जो प्लस वाला साइन होता है इसका काम होता है दो नंबर्स को ऐड करना तो इसे हम कहते हैं ऑपरेटर तो ऑपरेटर क्या कर रहा है ऑपरेटर कुछ काम कर रहा है क्या काम कर रहा है ये वाला ऑपरेटर ये वाला ऑपरेटर दो नंबर्स को ऐड करने का यानी एडिशन का काम कर रहा है तो जैसे हमारे पास प्लस वाला ऑपरेटर होता है वैसे ही हमारे पास माइनस वाला भी ऑपरेटर होता है मल्टीप्लाई भी होता है इस तरीके से बहुत सारे डिफरेंट डिफरेंट ऑपरेटर्स होते हैं प्रोग्रामिंग के अंदर सबसे पहली कैटेगरी ऑफ ऑपरेटर्स जिसकी हम बात करेंगे इन्हें हम कहते हैं अपने एरिदमेटोसस एरिथ मेे िक ऑपरेटर्स यानी जो मैथ करने में हमें हेल्प करते हैं तो मैथ के अंदर ऑलरेडी इनमें से काफी सारे हमने देखे होंगे इनमें से सबसे वेल नोन है हमारा प्लस ऑपरेटर माइनस ऑपरेटर मल्टीप्लाई ऑपरेटर जिसके लिए हम एस्टरिस सिंबल यानी स्टार वाला सिंबल यूज करते हैं और हमारा डिवाइड ऑपरेटर इन चारों को एक बार इंप्लीमेंट करके देखते हैं सबसे पहले एक कॉमेंट डाल लेते हैं यहां पर कि हम सीखने वाले हैं अपने एरिथ मेटिक ऑपरेटर्स के बारे में तो एमेटिक ऑपरेटर में सबसे पहले कंसोल डलॉग करेंगे अच्छा कंसोल डलॉग में यहां पर एक दो वेरिएबल बना लेते हैं लेट ए इ इक्वल टू इसे कह देते हैं फ एंड लेट बी इ इक्वल टू लेट्स कॉल इट टू तो यहां पर इस तरीके से स्ट्रिंग के अंदर हम लिख सकते हैं a + b अगर मैंने सिर्फ इतना लिखा तो क्या प्रिंट होकर आएगा हमारे पास प्रिंट होके आएगा a + b क्योंकि स्ट्रिंग्स के अंदर चीजें वैसी की वैसी प्रिंट होकर आती है पर अगर हमें लिखना है a + b इ इक्वल टू समथिंग तो ये आएगा a + b = टू समथिंग पर मुझे अगर एक्चुअल आउटपुट प्रिंट करवाना है दो चीजें एक साथ प्रिंट करवानी है तो उसके लिए हम कॉमा को यूज कर सकते हैं और कॉमा में हम लिख देंगे a + b तो इस तरीके से क्या होगा a + b की यहां पे वैल्यू कैलकुलेट होगी और फिर वो वैल्यू हमारे पास प्रिंट होके आएगी रिफ्रेश किया तो हमारे पास आ गया a + b = 7 a की वैल्यू क्या थी 5 थी b की वैल्यू क्या थी टू थी 5 + 2 हमारे पास क्या होता है 7 के इक्वल होता है हम चाहते तो इसको किसी दूसरे वेरिएबल c के अंदर भी सेव करवा सकते थे और फिर c को प्रिंट करवा सकते थे सेव किया रिफ्रेश किया तो भी हमारे पास सेम आउटपुट आता बट हम चाहे तो इसे डायरेक्टली भी इस तरीके से प्रिंट करवा सकते हैं तो ये हो गया हमारा a + b इसी तरीके से हम प्रिंट करवा सकते हैं a - b a - b जाएगा a - b रिफ्रेश किया तो इट विल बी इक्वल टू 3 यहां पे साथ में हम a और b की वैल्यूज प्रिंट करवा लेते हैं कसोल डलॉग a इ इक्वल टू यहां पे प्रिंट करवा देंगे a की वैल्यू कॉमा एंड b इज इक्वल टू और यहां पे प्रिंट करवा देंगे b की वैल्यू तो हमें कंसोल के अंदर भी दिखाई देगा a की वैल्यू है 5 b की वैल्यू है 2 तो 5 - 2 हमारे पास हो जाएगा 3 के इक्वल अगर हमें मल्टीप्लाई करना है तो इसी को कॉपी कर लेते हैं मल्टीप्लाई करने के लिए हम मल्टीप्लाई का सिंबल यूज करते हैं व्हिच इज द एस्ट रिस्क सिंबल अब यहां पे मल्टीप्लिकेशन नहीं होगा मल्टीप्लिकेशन एक्चुअली यहां पे होगा सेव कर लेते हैं रिफ्रेश करेंगे तो a * b = 10 यह हमारे पास आ गया कॉपी किया पेस्ट कर लिया डिवाइड के लिए हम स्लैश को यूज़ करते हैं तो a b यानी 5 / 2 रिफ्रेश किया तो 5 / 2 हमारे पास होता है 2.5 तो उसकी वैल्यू हमारे पास प्रिंट होके आ गई तो यह हमारे चार बेसिक एरिथ मेे िक ऑपरेशंस होते हैं पर प्रोग्रामिंग के अंदर इनसे भी एडिशनल कुछ और होते हैं यह चार तो मैथ के अंदर यूज़ होते हैं पर जावास्क्रिप्ट के अंदर हमें एक्स्ट्रा देखने को मिलते हैं एक हमारे पास ऑपरेटर होता है मॉड्यूस ऑपरेटर मॉड्यूस ऑपरेटर का सिंबल होता है परसेंटेज वाला साइन अगर हमने कभी भी लिखा a मॉड्यूस b तो उसका मतलब है कि a से जब डिवाइड होगा तो उनका जो भी रिमाइंडर बचेगा उस रिमाइंडर की वैल्यू हमारे पास आनी चाहिए फॉर एग्जांपल अगर हमने फाइव को टू से डिवाइड किया तो फाइव जब हमारा टू से डिवाइड होगा तो उस केस में टू हमारा क्वेश बचेगा यहां से चार हमारे पास गया लास्ट में रिमाइंडर क्या आता है रिमाइंडर आता है वन तो मॉड्यूस क्या देगा फ मॉड्यूस टू या इसको फ मॉडलो टू भी बोल सकते हैं दिस वैल्यू इज गोइंग टू बी इक्वल टू 1 तो हमारे पास प्रिंट होके आएगा वन इस चीज को यहां पे लिख सकते हैं कसोल डलॉग या इनफैक्ट इसे पूरा प्रिंट कर लेते हैं a मॉड्यूस b की वैल्यू होगी हमारे पास इक्वल टू 1 सेव करेंगे रिफ्रेश करेंगे तो ये a मॉड्यूस b हमारे पास आया वन यानी दो नंबर्स डिवाइड हो रहे हैं a ब से जब डिवाइड हो रहा है तो रिमाइंडर जो आएगा रिमाइंडर हमें मॉड्यूस देता है सेकंड हमारे पास एक और ऑपरेटर होता है व्हिच इज यूज्ड फॉर एक्सपो एंसन एक्सपो एंसन यानी पावर देना मैथ के अंदर हमने पावर पढ़ी थी a टू द पावर b यानी 2 टू द पावर 2 अगर हमने लिख दिया तो इसका मतलब है 2 मल्ला बा 2 2 टू द पावर 3 लिख दिया इसका मतलब होता है 2 ल् 2 म बा 2 3 टू द पावर 4 लिख दिया तो इसका मतलब होता है 3 * 3 * 3 * 3 तो इस तरीके से हम उसके लिए एक्सपो एंसन के लिए यहां पर दो एस्ट रिस्क यानी दो मल्टीप्लाई के साइन को यूज करते हैं अगर हमने लिख दिया a एक्सपो एसशन b तो उसका मतलब होता है a टू द पावर b यह चीज करने के लिए व्हाट वी कैन डू इज इसे कॉपी कर लेते हैं और यहां पर दो एस्क यूज़ करते हैं इसे कॉपी कर लेते हैं एंड यहां पे पेस्ट कर देते हैं अब इसका क्या मतलब होगा इसका मतलब बेसिकली होगा कि 5 टू द पावर 2 और 5 टू द पावर 2 की वैल्यू क्या होती है 5 * बा 5 व्हिच इज इक्वल ट 25 तो दिस शुड गिव मी एन आउटपुट ऑफ़ 25 सेव कर लेते हैं रिफ्रेश कर लेते हैं तो ये वैल्यू हमारे पास आएगी 25 के इक्वल अब ये तो हो गए हमारे नॉर्मल ऑपरेटर्स जनरली ये जो सारे के सारे ऑपरेटर्स हैं ये दो ऑपरेंट के ऊपर काम करते हैं दो ऑपरेंट के ऊपर काम करने का मतलब है इन्हें ए चाहिए तो इन्हें बी भी चाहिए अगर कुछ ऐड करना है आपको तो a भी होना चाहिए बी भी होना चाहिए अगर कुछ पावर देनी है तो a भी होना चाहिए b भी होना चाहिए पर हमारे पास एरिथ मेे ऑपरेटर्स में दो ऐसे ऑपरेटर्स होते हैं जिन्हें सिर्फ एक सिंगल ऑपरेंट चाहिए ये चीज मैथ के अंदर देखने को नहीं मिलती ये चीज हमें स्पेसिफिकली प्रोग्रामिंग के अंदर देखने को मिलती है दैट इज व्हाई इट इज यूनिक इन ऑपरेटर्स को हम यूरी ऑपरेटर्स कहते हैं हमारे पास दो यूनिरी ऑपरेटर्स होते हैं जावास्क्रिप्ट के अंदर एक होता है हमारा इंक्रीमेंट ऑपरेटर एक होता है हमारा डिक्रिमेंट ऑपरेटर यूनिरी ऑपरेटर इंक्रीमेंट ऑपरेटर का सिंबल होता है प्लस प्लस और डिक्रिमेंट का सिंबल होता है माइनस माइनस अगर मैंने लिख दिया a + प् तो प्रोग्रामिंग में इसका मतलब है a + 1 दोनों का सेम मतलब होता है जावास्क्रिप्ट में और अगर मैंने लिख दिया a - माइन तो इसका मतलब होता है a -1 इन दोनों का भी सेम मतलब है तो बेसिकली a को हम a -1 वैल्यू दे रहे हैं और यहां पे a को हम a + 1 वैल्यू दे रहे हैं तो एक सिंगल जो a होगा उसको अगर हमें वन से बढ़ाना है तो उसके लिए हम प्लस प्लस यूज कर सकते हैं और वन से घटाना है तो उसके लिए हम माइनस माइनस यूज कर सकते हैं यह हो हो सकता है फर्स्ट टाइम देखने में यूनिरी ऑपरेटर थोड़ा सा कॉम्प्लेक्शन की बात नहीं है बहुत इजी होता है यूज करने में एंड इनफैक्ट इसको बाद में हम लूप्स नाम का एक टॉपिक पढ़ेंगे तो डे टू डे बेसिस पे बेसिकली जावास्क्रिप्ट के अंदर इसको यूज कर रहे होंगे तो यूरी ऑपरेटर को एक बार देखते हैं लेट्स क्रिएट अ न्यू हेडिंग कॉल्ड यूनिरी ऑपरेटर एंड इस पूरे के पूरे पार्ट को हम कॉमेंट आउट कर सकते हैं कॉमेंट आउट करने के लिए बेसिकली हमें क्या करना होता है कमांड और स्लैश अगर हम एक साथ प्रेस करते हैं ये शॉर्टकट होता है सारी की सारी चीजों को एक साथ कमेंट आउट करने का कॉमेंट आउ आउट कर दिया अब हमारे पास कुछ भी प्रिंट नहीं होगा बट ये फर्स्ट लाइन हमें प्रिंट करवानी है तो इसको हम प्रिंट करवा लेते हैं या इनफैक्ट इसी को कॉमेंट आउट करके इसे भी कॉमेंट आउट कर देते हैं एंड यहां इसे पेस्ट कर लेते हैं इन दोनों को कर देते हैं कॉमेंट आउट सेव कर लिया अब हम यूनिरी ऑपरेटर्स के बारे में बात करेंगे रिफ्रेश किया हमारे पास ये दो वैल्यूज हैं a एंड b की अब फॉर एग्जांपल मैंने यहां पर लिखा a = a + 1 और फिर कसोल डलॉग करके हमने वैल्यू प्रिंट करवाई a की अब हमें पता है a की वैल्यू यहां पर 5 है जैसे ही यहां पर a + 1 = a होगा a + 1 की वैल्यू हो जाएगी 6 और वो a के अंदर जाके स्टोर हो जाएगी तो यहां पे a की वैल्यू हो चुकी है सिक्स के इक्वल तो यहां पे प्रिंट भी सिक्स होना चाहिए सेव किया या इनफैक्ट यहां लिख देते हैं a इक्व ट सेव किया रिफ्रेश किया हमारे पास आ गया a = 6 अब यही चीज को शॉर्टकट में लिखने का तरीका होता है a + प सिंपली a + लिखो सेमीकलन लगाओ एंड उसके बाद जब हम a को प्रिंट करवाएंगे तो उसकी वैल्यू भी सिक्स आएगी सेव किया रिफ्रेश किया अब भी हमारे पास a = 6 आएगा ऐसे ही अगर हमें लिखना होता a = a - 1 तो उसे हम ऐसे लिख सकते थे तो यहां पे जब a की वैल्यू प्रिंट होती तो पहले a की वैल्यू फव थी यहां पे फोर हो गई तो हमारे पास फोर प्रिंट होके आता सेव किया रिफ्रेश किया हमारे पास a = 4 आ गया इसी को लिखने का दूसरा तरीका होता है a - माइ जैसे ही a - माइनस लिखा रिफ्रेश किया तब भी हमारे पास a = 4 आएगा अब ये तो हो गया इंक्रीमेंट एंड डिक्रिमेंट का मतलब इसके अलावा हम अपने प्लस प्लस एंड माइनस माइनस को दो तरीके के से यूज कर सकते हैं एक होता है कि हम लिखें a + प् एक होता है कि हम लिखें + + a दोनों वैलिड हैं एक होता है कि हम लिखें a माइन माइन एक होता है कि हम लिखें माइनस माइ a ये दोनों भी वैलिड है इसे हम कहते हैं पोस्ट इंक्रीमेंट पोस्ट यानी बाद में इसे हम कहते हैं प्री इंक्रीमेंट प्री यानी पहले इसे हम कहते हैं पोस्ट डिक्रिमेंट और इसे हम कहते हैं प्री डिक्रिमेंट इनके नाम वैसे अभी हमें एज सच याद करने की जरूरत नहीं है वो टाइम के साथ हमें धीरे-धीरे याद हो जाएंगे पोस्ट इंक्रीमेंट कहता है कि पहले अगर अभी इस लाइन के अंदर जिस लाइन के अंदर इंक्रीमेंट हो रहा है यहां पे अगर कोई काम हो रहा है तो उसमें वैल्यू चेंज नहीं होगी वैल्यू अगली लाइन से चेंज होगी प्री इंक्रीमेंट कहता है मैं तो पहले वैल्यू चेंज करूंगा उसके बाद काम होगा पोस्ट बाद में वैल्यू चेंज करता है प्री पहले ही वैल्यू चेंज कर देता है फॉर एग्जांपल यहां पे प्रिंट करवाने का काम अगर हम एक ही लाइन में करें हम क्या करें हम यहां पे प्रिंट करवाने वाले हैं एक तो मैं प्रिंट करवाऊंगी + + a तो + + a की वैल्यू क्या होगी इक्वल टू कर लेते हैं और इसे लिख देते हैं प्लस प्लस प्लस प्लस कहता है पहले मैं वैल्यू चेंज करूंगा फिर प्रिंट करवाऊंगी क्योंकि यहां पे प्रिंट करवाने का काम हो रहा है तो यहां पे फाइव जो है पहले फाइव की वैल्यू चेंज होगी वो सिक्स बनेगा और फिर वैल्यू सिक्स प्रिंट होकर आएगी हमारे पास तो रिफ्रेश किया तो हमारे पास क्या आया + + a = 6 यहीं पर अगर हमने किया होता a + प् तो a + प् क्या कहता a+ प्स कहता पहले मैं काम करूंगा यानी पहले प्रिंट करूंगा वैल्यू फिर उसे चेंज करूंगा तो पहले क्या वैल्यू प्रिंट होगी a की वैल्यू फाइव है तो वो फाइव ही प्रिंट होगी फिर वो सिक्स बन जाएगी बाद में जाके रिफ्रेश किया तो इस बार हमारे पास a+ प की वैल्यू फाइव ही आई पर अगर मैं अगली लाइन के अंदर प्रिंट करवाऊं console.log a = यहां पे अगर a की वैल्यू प्रिंट करवाई तो अब क्योंकि a की वैल्यू चेंज हो चुकी होगी तो वो प्रिंट होकर आएगा 6 के इक्वल तो a + प् कहता है पहले पुरानी वैल्यू यूज़ होगी इस लाइन के अंदर पर अगली लाइन में जो भी काम हो रहा होगा वहां से नई वैल्यू यूज़ होनी स्टार्ट हो जाएगी तो यहां पर तो पुरानी वैल्यू फाइव होगी पर यहां पर नई वैल्यू सिक्स हमारे पास आएगी इसी तरीके से सेम तरीके से हमारा पोस्ट एंड प्री डिक्रिमेंट काम करता है फॉर एग्जांपल इफ आई राइट - - a और यहां पे हम प्रिंट करवाएंगे - - a तो माइनस माइनस a कहता है पहले वैल्यू को माइनस माइनस करूंगा यानी फव का फोर हो जाएगा तो फोर प्रिंट करवाएंगे और अगली लाइन में भी फोर ही प्रिंट होगा हमारे पास पर यहीं पर अगर हमने किया होता a माइन माइनस और यहां हम प्रिंट करवाते a माइ माइनस तो a माइनस माइनस कहता है मैं तो पहले अपना काम करूंगा यानी पहले a की वैल्यू को प्रिंट करवाऊंगी फाइव प्रिंट हुआ फिर उसे डिक्रीज करूंगा तो डिक्रीज तो हो गया इस लाइन के अंदर पर वो रिफ्लेक्ट नहीं हो रहा वो रिफ्लेक्ट होगा नेक्स्ट लाइन से जब a की वैल्यू प्रिंट होगी तो हमारे पास फोर आएगा तो ये थोड़ा सा ऑपरेटर्स के अंदर पोस्ट एंड प्री वाला कांसेप्ट बट ज्यादा टेंशन लेने की जरूरत नहीं है इसके आगे जाके हम चैप्टर्स के अंदर बहुत सारे एग्जांपल्स देखेंगे तो एक पॉइंट के बाद हमें आदत हो जाएगी इनको यूज़ करने की कोई नहीं थोड़ा सा प्रैक्टिस कर लेना खुद अगर 5 मिनट पॉज करके इसको ठंडे दिमाग से सोचेंगे तो इजली समझ में आ जाएगा तो ये सारे के सारे ऑपरेटर्स हमारे होते हैं एरिदमेटोसस नेक्स्ट जिन ऑपरेटर्स के बारे में बात करेंगे ये होते हैं हमारे असाइनमेंट ऑपरेटर्स असाइनमेंट ऑपरेटर्स का काम होता है टू असाइन वैल्यूज असाइन वैल्यूज यानी किसी भी वेरिएबल को कोई भी वैल्यू असाइन करना सबसे इज असाइनमेंट ऑपरेटर हम ऑलरेडी यूज़ करते आए व्हिच इज इक्वल टू इक्वल टू यानी 5a = 5 अगर हमने लिख दिया तो ये इक्वल टू का जो सिंबल है ये हमारा एक असाइनमेंट ऑपरेटर होता है इसका मतलब है कि फाइव की वैल्यू a वेरिएबल के अंदर असाइन हो रही है हमेशा जब प्रोग्रामिंग की हम बात करते हैं तो जावास्क्रिप्ट के अंदर अगर हमने इस तरीके से लेफ्ट साइड में कुछ लिखा हुआ है इक्वल टू लिखा हुआ है राइट साइड में तो हमेशा वैल्यू क्या करती है वैल्यू राइट साइड से लेफ्ट साइड की तरफ प्रोपेगेटर है यानी राइट से लेफ्ट की तरफ जाती है अब इसके अलावा हमारे पास और भी असाइनमेंट ऑपरेटर्स होते हैं एक होता है हमारा प् इक्वल टू प्लस इक्वल टू कहने का मतलब होता है अगर हमने कहीं पर लिख दिया a प् इ 1 तो इसका मतलब होगा a = a + 1 अगर हमने लिख दिया a प् इ 4 तो इसका मतलब होगा a = a + 4 बेसिकली इसी चीज को लिखने का एक शॉर्ट तरीका एक कंपैक्ट तरीका इसको हम कह सकते हैं तो इसको देख भी लेते हैं एक बार लेट अस कमेंट आउट ऑल ऑफ दिस एंड इसको भी कमेंट आउट कर देते हैं कॉपी कर लेते हैं एंड कॉमेंट आउट कर लेते हैं नेक्स्ट स्टार्ट करते हैं अपने असाइनमेंट ऑपरेटर्स के साथ तो असाइनमेंट ऑपरेटर्स के अंदर सबसे पहले तो ये हमारे वेरिएबल हैं a एंड b तो अब हम यहां पर लिखने वाले हैं a + = 4 अब हम चाहे तो यहां पर बीच में स्पेस दे सकते हैं ये वाली स्पेसेस हमारी अलाउड होती हैं बट प्लस और इक्वल टू के बीच में स्पेस नहीं देनी क्योंकि ये क्या है ये एक सेम ऑपरेटर है तो इससे हमें साथ में लिखना होता है तो a + = 4 का मतलब होता है a = a + 4 और और a की वैल्यू क्या है पांच के बराबर है 5 + 4 हो जाएगा ना के इक्वल तो a की वैल्यू नाइन बन जाएगी कैसे वेरीफाई करें नेक्स्ट लाइन में प्रिंट करवा लेते हैं a = a को प्रिंट करवा लेते हैं तो हमारे पास पता है वैल्यू क्या प्रिंट होके आनी चाहिए वैल्यू हमारे पास प्रिंट होके आनी चाहिए नाइन के इक्वल इसको सेव कर लेते हैं एंड लेट्स रिफ्रेश इट a = 9 इसी तरीके से हम चाहे तो इसको माइनस इक्वल टू कर सकते हैं माइनस इक्वल टू जब हमने किया तो मतलब a - 4 हो जाएगा 5 - 4 की वैल्यू क्या होगी वन के इक्वल सेव किया रिफ्रेश किया वेरीफाई हो गया उसी तरीके से हम चाहे तो मल्टीप्लाई कर सकते हैं यहां मल्टीप्लाई लिख देते हैं तो a मल्टी बा 4 यानी 5 * 4 होता है हमारे पास इक्वल 20 सेव किया रिफ्रेश किया वेरीफाई हो गया इक्वल टू 20 इसी तरीके से सारे अरिमिल्ली दिया अब 5 मॉड्यूस 4 क्या होता है दैट शुड बी इक्वल टू 1 जब हम डिवाइड करेंगे रिमाइंडर में वन आएगा पाच को चार से डिवाइड करते हैं रिफ्रेश किया आंसर इ इक्वल ट 1 इसी तरीके से एक्सपोसिस कर सकते हैं यहां पे हम चाहे तो एक्सपोसिस कर सकते हैं जब फाइव के साथ एक्सपो एंसन करेंगे फोर का तो इट विल बी 125 * 5 आई थिंक इट शुड बी 625 चेक करते हैं आंसर क्या आएगा रिफ्रेश किया तो यस द आंसर इज इक्वल टू 625 तो इस तरीके से सारे के सारे जो एरिथ मेे िक ऑपरेटर्स हैं इन्हें हम यूज़ कर सकते हैं अपने असाइनमेंट ऑपरेटर्स की फॉर्म में नेक्स्ट ऑपरेटर्स जिनके बारे में हम बात करेंगे ये होते हैं हमारे कंपैरिजन ऑपरेटर्स इनका काम होता है वैल्यूज को कंपेयर करना जैसे हमारे पड़ोसी हमारे मार्क्स को अपने बच्चों के मार्क्स से कंपेयर करते हैं उसी तरीके से हम यहां पे कंपैरिजन ऑपरेटर्स को यूज करते हैं टू कंपेयर टू वैल्यूज अब दो वैल्यूज कुछ भी वैल्यूज हो सकती हैं फॉर एग्जांपल मुझे दो नंबर्स को कंपेयर करना है एक नंबर है a = 5 दूसरा नंबर है b = 5 दोनों को अगर मुझे कंपेयर करना है कि दोनों नंबर इक्वल हैं क्या उसके लिए मैथ के अंदर हम कैसे लिखते हैं मैथ के अंदर तो हम लिख देते ते a = b हमें पता चल जाता है और नॉट इक्वल टू के लिए क्या करते हैं a नॉट इक्वल टू b ये होती है मैथ वाली जिंदगी अब जावास्क्रिप्ट वाली जिंदगी के अंदर क्या होता है ये जो नॉर्मल इक्वल टू होता है ये तो हमारा असाइनमेंट ऑपरेटर बन जाता है तो इसको तो कंपैरिजन के लिए यूज नहीं कर सकते तो इसीलिए जावास्क्रिप्ट के अंदर कंपैरिजन के लिए हम डबल इक्वल टू लिखते हैं और नॉट इक्वल टू के लिए हम अपना एक्सक्लेमेशन का साइन लगाते हैं और इसके लिए एक्सक्लेमेशन और फिर इक्वल टू इसको हम कहते हैं नॉट इक्वल टू जहां भी नॉट हमें लिखना होगा जावास्क्रिप्ट के अंदर या इन जनरल प्रोग्रामिंग लैंग्वेजेस के अंदर मैक्सिमम के अंदर हम क्या लिखते हैं नॉट के लिए हम एक्सक्लेमेशन को यूज़ करते हैं तो सबसे पहले देखते हैं चेक करते हैं इन ऑपरेटर्स को इस पार्ट को कर लेते हैं हम कॉमेंट आउट इन्हें भी कर देते हैं कॉमेंट आउट कॉपी कर लेते हैं एंड नेक्स्ट एक हम यहां पे कॉमेंट लिख देते हैं फॉर आवर कंपैरिजन ऑपरेटर्स इसको सेव कर लेते हैं अब कंपैरिजन ऑपरेटर्स को यूज करके सबसे पहले हम चेक करने वाले हैं console.log a ड = b की वैल्यू क्या होगी अब यहां पर a इक्वल टू इक्वल ट b हम बेसिकली ये कहने की कोशिश कर रहे हैं कि a हमारा b के इक्वल है तो ये जो कंपैरिजन ऑपरेटर होगा ये हमें बताएगा कि हम सच कह रहे हैं या फिर हम झूठ कह रहे हैं तो बेसिकली हम कहने की कोशिश कर रहे हैं फाइव मेरा इक्वल टू इक्वल टूटू के इक्वल है तो हमारा जो भी कंपैरिजन ऑपरेटर होता है वो हमारे रिजल्ट में हमेशा एक बुलियन वैल्यू रिटर्न करता है जो भी अपने स्टेटमेंट लिखी होती है उसके लिए या तो वो हमें ट्रू रिटर्न करके देगा या फिर वो हमें फाल्स रिटर्न करके देगा यहां हम कहने की कोशिश कर रहे हैं पांच दो के बराबर है और फिर हम उन दोनों लोगों को कंपेयर कर रहे हैं तो ओबवियसली हमारे पास फाल्स रिटर्न होके आएगा इसको सेव करते हैं एंड रिफ्रेश करेंगे तो 5 = इक्व 2 के लिए वी विल गेट फाल्स उसी तरीके से अगर हम बी की वैल्यू को चेंज कर देते हैं टू फ एंड इस बार रिफ्रेश करेंगे इसे फाइव कर देते हैं सेव एंड रिफ्रेश करेंगे तो इस बार हमारे पास रिटर्न होके आएगा ट्रू उसी तरीके से जैसे हमारे पास इक्वल टू होता है हम नॉट इक्वल टू भी चेक कर सकते हैं यानी यहां पे हमने स्टेटमेंट लिखी कि a की वैल्यू इज नॉट इक्वल टू बी तो हम बेसिकली कहने की कोशिश कर रहे हैं 5 इज नॉट इक्वल टू फ ऑब् वियस ये स्टेटमेंट झूठ है तो हमारे पास फाल्स प्रिंट होके आएगा सेव किया रिफ्रेश किया फ इज नॉट इक्वल टू 5 इज अ फाल्स स्टेटमेंट एंड यहीं पर अगर हमारे पास टू होता तो यहां हम कहने की कोशिश कर रहे हैं फ इज नॉट इक्वल टू 2 कैसे कहने की कोशिश कर रहे हैं इस एक्सप्रेशन से ये तो बस हमने एज इट इज प्रिंट करवा दिया कह कौन रहा है कह ये एक्सप्रेशन रहा है और इस एक्सप्रेशन ये सच कह रहा है या नहीं कह रहा वो हमारे लिए हमारा कंपैरिजन ऑपरेटर बताएगा तो यहां पे हमारे पास ट्रू रिटर्न हो के आएगा बिकॉज़ ओबवियसली फाइव इज नॉट इक्वल टूटू रिफ्रेश किया एंड यहां पे हमारे पास प्रिंट हो के आया अब जब भी हमारे पास कंपैरिजन ऑपरेटर होता है उसके अंदर एक इंटरेस्टिंग चीज होती है अगर हमने यहां पर ए के लिए फ लिख दिया और बी के लिए भी हम फाइव लिख दें बट ये जो फाइव हो ये स्ट्रिंग वाला फाइव हो तो हमें पता है ये जो फर्स्ट फाइव है यानी a दिस इज इक्वल टू अ नंबर और ये जो सेकंड है दिस इज इक्वल टू अ स्ट्रिंग डेटा टाइप्स के बारे में हम ऑलरेडी पढ़ चुके हैं मुझे पता है ये एक नंबर है ये एक स्ट्रिंग है और कायदे से एक नंबर बहुत सारे हमारे ऐसे कोड हो सकते हैं जिसमें हम नहीं चाहते कि नंबर ऑफ स्ट्रिंग की वैल्यू इक्वल हो बट अगर मैंने यहां पर लिख दिया फ या a = ू इ ट b एंड उस केस में हम चेक करेंगे तो हमारे पास क्या आएगा हमारे पास ट्रू रिटर्न होके आएगा सेव करते हैं रिफ्रेश करेंगे a = = b के लिए इसने कंपैरिजन ऑपरेटर ने हमें ट्रू रिटर्न करके दे दिया ये इसलिए पॉसिबल हो पाता है जावास्क्रिप्ट में क्योंकि जब एक स्ट्रिंग के अंदर सिर्फ नंबर होता है तो इंप्ली सिटल जावास्क्रिप्ट क्या करती है ऑटोमेटिक इस स्ट्रिंग को पहले नंबर के अंदर कन्वर्ट करेगी और फिर इस नंबर को इस नंबर के साथ कंपेयर करने की कोशिश कर रही है तो ये स्ट्रिंग फाइव के अंदर कन्वर्ट होके और फिर फाइव वाला नंबर फाइव वाले नंबर से मैच कर जाएगा और ये ट्रू दे देगा बट हमें हमारे पास कई सारे ऐसे केसेस होते हैं जिसमें हम नहीं चाहते कि स्ट्रिंग और नंबर इक्वली कंपेयर हो पाए तो ऐसे केसेस के लिए हम स्ट्रिक्टर वर्जन ऑफ़ इक्वल टू एंड नॉट इक्वल टू को यूज़ करते हैं एंड उसके लिए हम ट्रिपल इक्वल टू लिखते हैं तो इसको हम कह सकते हैं अपना स्ट्रिक्ट वर्जन ये और ज्यादा स्ट्रिक्टली चेक करेगा यानी डबल इक्वल टू तो क्या करता था सिर्फ वैल्यू को चेक करता था कि अंदर क्या वैल्यू स्टोर्ड है ट्रिपल इक्वल टू हमारे लिए डाटा टाइप को भी चेक करता है ये चेक कर लेगा पहले ही कि स्ट्रिंग और नंबर का कभी कंपैरिजन नहीं होना चाहिए या दूसरी कोई अगर वैल्यू है तो उनका कंपैरिजन नहीं होना चाहिए अब इसके लिए व्हाट वी कैन डू इज जस्ट यहां पे हमें ट्रिपल इक्वल टू लगाना है और कोई चेंज हमें लेके नहीं आना सेव किया रिफ्रेश किया तो इस केस में हमारे पास रिटर्न होके आएगा फाल्स जैसे हमारे पास ट्रिपल इक्वल टू होता है वैसे ही हमारे पास नॉट एंड डबल इक्वल टू होता है तो नॉट एंड डबल इक्वल टू को हम इस तरीके से यूज़ कर सकते हैं रिफ्रेश किया हमारे पास आ गया ट्रू रिटर्न ओके तो इस तरीके से ये स्ट्रिक्टर वर्जन है और जनरली जावास्क्रिप्ट के अंदर जब भी हमें वैल्यूज को कंपेयर करना होगा अनलेस एंड अंट्स लिसिट चाहते हैं कि मुझे डेटा टाइप के बेसिस पे कोई भी भाव नहीं चाहिए अगर अलग-अलग डेटा टाइप है तो भी कंपेयर कर दो तब हम डबल इक्वल टू को यूज़ करेंगे नहीं तो मैक्सिमम केसेस में हम ट्रिपल इक्वल टू को यूज़ करते हैं इसके अलावा हमारे पास और भी कंपैरिजन ऑपरेटर होते हैं जिसमें हमारा ग्रेटर दन हो जाता है ग्रेटर दन इक्वल टू लेस दन एंड लेस दन इक्वल ट इनके भी एक एक बार एग्जांपल्स देख लेते हैं यहां पर a = 5 रख लेते हैं b = 3 रख लेते हैं लेट्स फर्स्ट चेक फॉर a > द b या आप बेसिकली यहां हम कहने की कोशिश कर ें हैं कि 5 इज ग्रेटर द 3 हमें पता है फाइव होता है थ्री से ग्रेटर तो उसके लिए हमारे पास ट्रू रिटर्न होके आएगा सेव किया रिफ्रेश किया दिस इज इक्वल टू ट्रू एंड यहीं पर हम लेस देन कर देते तो फिर हमारे पास फाल्स रिटर्न होके आता रिफ्रेश किया फॉल्स यहीं पर हम लेस दन इक्वल टू कर देते एंड लेट्स मेक b इक्व 5 सेव किया रिफ्रेश किया दिस शुड बी इक्वल टू 5 रिफ्रेश किया तो ये हमारे पास ट्रू रिटर्न होके आ गया एंड यहीं पर ग्रेटर दन इक्वल टू के लिए भी हमें वो ट्रू ही रिटर्न करके देगा सेव किया रिफ्रेश किया ट्रू आ गया यहां पर वैल्यू को हम चेंज भी कर सकते हैं a को हमने सिक्स बना दिया तो यहां पे सिक्स हो जाएगा a सेव किया रिफ्रेश किया ये भी हमारे लिए ट्रू वैल्यू रिटर्न करके देगा तो यह होते हैं सारे के सारे कंपैरिजन ऑपरेटर्स जो दो वैल्यूज को कंपेयर करने का काम करते हैं इसके अलावा एक लास्ट टाइप ऑफ ऑपरेटर हम पढ़ रहे होंगे जो होते हैं हमारे पास लॉजिकल ऑपरेटर्स लॉजिकल ऑपरेटर्स कंपैरिजन ऑपरेटर से थोड़ी सी अलग होते हैं कंपैरिजन ऑपरेटर क्या करता है एक वैल्यू को दूसरी वैल्यू से कंपेयर करता है पर लॉजिकल ऑपरेटर्स मल्टीपल एक्सप्रेशंस को इवैल्युएबल आंसर देते हैं और लॉजिकल ऑपरेटर का भी आंसर हमारे पास लास्ट में या तो फॉल्स आता है या ट्रू आता है लॉजिकल ऑपरेटर कहता है कि एक व्यक्ति मान लो सच बोल रहा है इसने क्या किया ट्रू रिटर्न कर दिया यह कोई भी व्यक्ति है इसको कोड के अंदर हम एक्सप्रेशन कह सकते हैं एक आदमी सच बोल रहा है और दूसरा आदमी भी मान लो सच बोल रहा है या ये झूठ बोल रहा है तो डिपेंडिंग अपॉन दोनों का आउटपुट फाइनल आंसर क्या होना चाहिए अगर इस तरीके की हमारे पास सिचुएशन होती है तो फिर हम यूज करते हैं अपने लॉजिकल ऑपरेटर्स को अब यहां पर सबसे पहले बात करते हैं अपने लॉजिकल ऑपरेटर्स में लॉजिकल एंड की लॉजिकल एंड हमें बताता है अगर हमारे पास ऐसी सिचुएशन हो जिसमें हमें चेक करना हो कि कंडीशन वन ट्रू है और कंडीशन टू भी ट्रू है तभी हमारे पास फाइनल आंसर जो है वो ट्रू आना चाहिए ट्रू यानी सच आना चाहिए इस तरीके की अगर हम कंडीशन एस्टेब्लिश करना चाहते हैं तो उसके लिए हम लॉजिकल एंड को यूज करते हैं लॉजिकल एंड कहता है कि मैं लास्ट में फाइनल आंसर ट्रू तभी दूंगा जब मुझे फर्स्ट वैल्यू भी ट्रू मिलेगी जब मुझे सेकंड वैल्यू भी ट्रू मिलेगी तो लॉजिकल एंड कहता है कि मेरे फाइनल आंसर ट्रू होने के लिए सारी की सारी वैल्यूज का ट्रू होना जरूरी है इसका एक एग्जांपल देखते हैं फॉर एग्जांपल हमने यहां पर लिखा इसे हम कॉमेंट आउट कर देते हैं लेट्स कॉमेंट दिस आउट एंड लेट्स कॉमेंट दिस आउट यहां हम लिख देंगे अपना लॉजिकल ऑपरेटर्स एंड यहां पेस्ट कर लेते हैं अपनी वैल्यूज को अब फॉर एग्जांपल एक वेरिएबल बना लेते हैं कंडीशन वन कंडीशन वन कह रही है a इज ग्रेटर दन बी अब हमें पता है a हमारा बी से ग्रेटर ही है तो ये वा क्या रिटर्न करेगी ये वैल्यू ट्रू रिटर्न करेगी वहीं पर हमने एक दूसरा वेरिएबल बना लिया कंडीशन टू कंडीशन टू कहता है a इज इक्वल टू 6 अब हमें पता है a की वैल्यू सिक्स के इक्वल तो है ही तो ये भी हमें क्या रिटर्न करेगा ये भी हमें ट्रू रिटर्न करेगा तो अगर हम प्रिंट करवाना चाहते हैं कंसोल डलॉग कंडीशन वन एंड एंड कंडीशन टू तो वो क्या करेगा ये देखेगा फर्स्ट वैल्यू ट्रू है क्या और सेकंड वैल्यू ट्रू है क्या अगर दोनों वैल्यू ट्रू है तो फिर वो फाइनल आंसर हमें ट्रू रिटर्न करके दे देगा नहीं तो हमें फाइनल आंसर फाल्स रिटर्न हो के आएगा अगर एक भी कंडीशन झूठ हो जाती है तो तो यहां कंडीशन वन एंड एंड कंडीशन टू हम लिख सकते हैं ये ध्यान रखना है यहां पे सिंगल एंड यूज नहीं करना डबल एंड यूज़ करना है सिंगल एंड बिट वाइज ऑपरेटर्स होते हैं जावास्क्रिप्ट के अंदर बिट वाइज ऑपरेटर्स को इतना हम डिटेल में नहीं पढ़ेंगे क्योंकि इतना फ्रीक्वेंसी एंड यूज़ नहीं करना हमें लॉजिकल ऑपरेटर के लिए डबल एंड यूज़ करना है इसको सेव कर लेते हैं रिफ्रेश करेंगे तो हमारे पास प्रिंट होके आया है ट्रू इसका मतलब कंडीशन वन भी सच थी कंडीशन टू भी सच थी पर अगर एक को हम झूठ बना दे लेट्स सपोज आई राइट a इज इक्वल टू इक्वल टू 5 तो यहां पे मुझे पता है ये कंडीशन फॉल्स हो जाएगी ऐसे केसेस में हमारा एंड एंड हमें फॉल्स रिटर्न करके दे देगा वहीं पर अगर हमने इस फर्स्ट कंडीशन को फाल्स बना दिया होता इसे तो सिक्स कर देते हैं ये तो ट्रू हो गई पर इसको हमने कर दिया लेसन a लेन बी और ये हमारे पास फाल्स हो गई अब फाल्स एंड ट्रू इसके लिए हमें रिटर्न होकर आएगा फाल्स तो इसकी एक्चुअली हम एक टेबल भी बना सकते हैं फॉर एग्जांपल दिस इज माय कंडीशन वन और यह है हमारी कंडीशन टू और यह है हमारा फाइनल रिजल्ट अब कंडीशन वन या तो ट्रू हो सकती है कंडीशन टू भी ट्रू हो सकती है ये एक ट्रू हो सकती है फाल्स हो सकती है यह फाल्स हो सकती है ट्रू हो सकती है यह फाल्स हो सकती है फल्स हो सकती है इनके बेसिस प जब ट्रू एंड ट्रू होगी तभी रिजल्ट ट्रू आएगा एंड एंड के केस में बाकी सारी केसेस में हमारा रिजल्ट फाल्स आने वाला है और यह जो कंडीशन है इनको डायरेक्टली हम यहां पर भी लिख सकते हैं फॉर एग्जांपल a ले बी इसे हम यहां पर लिख सकते हैं एंड a = ू इक्ट c इसे हम यहां पर लिख सकते हैं इन दोनों को वेरिएबल को एक्स्ट्रा वेरिएबल को हम हटा सकते हैं सेव किया रिफ्रेश किया तो भी हमारे पास सेम रिजल्ट प्रिंट होके आएगा तो अपनी कंडीशंस को डायरेक्टली यहां लिखना पॉसिबल है अब नेक्स्ट हम एक्सप्लोर करने वाले हैं अपने लॉजिकल और को लॉजिकल और कहता है कि दोनों में से कोई भी कंडीशन अगर ट्रू हो गई ना मेरे लिए तो मैं फाइनल आंसर ट्रू रिटर्न कर दूंगा तो इसकी अगर हम टेबल बनाने निकले तो लॉजिकल और हमारे लिए बोलेगा अगर दोनों में से एक भी भी ट्रू हो गई यहां तो दोनों ट्रू हैं तो मैं तो ट्रू रिटर्न कर दूंगा एक ट्रू एक फॉल्स हो गया तो भी ट्रू रिटर्न करूंगा एक फॉल्स एक ट्रू हो गया तो भी ट्रू रिटर्न करूंगा दोनों फॉल्स हुए सिर्फ उसी केस में मैं फाल्स रिटर्न करने वाला हूं तो अगर हमें इस तरीके की कंडीशन चेक करनी होती है जिसमें दोनों में से एक भी ट्रू निकल जाए तो मतलब ट्रू होगी चीज तो उस केस में हम लॉजिकल और को यूज़ करते हैं रियल लाइफ इसका ए इस तरीके का कुछ एग्जांपल हो सकता है फॉर एग्जांपल हम जोमट के ऊपर ऑफर्स अप्लाई कर रहे हैं और जावास्क्रिप्ट के अंदर हम कोड लिखने की कोशिश कर रहे हैं अब दे या फिर यूपीआई पेमेंट कर रहे हैं तो paytmbank.com क्योंकि दोनों में से सिर्फ एक ही कंडीशन सच है तभी फ़ाइनल आंसर हमारे पास ट्रू रिटर्न होके आएगा एक चीज़ याद रखनी है यह जो हम प्रिंट कर रहे होते हैं और और दिस इज़ बेसिकली अ स्ट्रेट लाइन हमारे कीबोर्ड के ऊपर इसे पाइप कहते हैं सिंबल को पाइप सिंबल इसको हम कह रहे होते हैं तो इस सिंबल को हम प्रेस करके अपने लॉजिकल और ऑपरेटर को लिखते हैं यहां भी दो बार इसे लिखना है एक बार लिख देंगे तो वह बिट वाइज़ ऑपरेटर बन जाएगा एंड थर्ड लॉजिकल ऑपरेटर हमारे पास होता है लॉजिकल नॉट इसीलिए शुरुआत में ही बोला था जहां भी एक्सक्लेमेशन दिखे जावास्क्रिप्ट में उसको पढ़ना है एज़ नॉट लॉजिकल नॉट कहता है कोई भी एक्सप्रेशन अगर ट्रू दे रहा होगा नाना मैं उसको फाल्स बना दूंगा और कोई भी फाल्स दे रहा होगा तो मैं उसे ट्रू बना दूंगा तो लॉजिकल नॉट हमेशा उल्टा करता है इस चीज को भी चेक कर सकते हैं लॉजिकल नॉट को एक ही एक्सप्रेशन चाहिए फॉर एग्जांपल वी हैव दिस एक्सप्रेशन a ले बी अब हमें पता है a ले बी फॉल्स दे रहा होगा हमें पर अगर हम इसे कर दे नॉट ऑफ और इसे पेंसिस में डाल देते हैं a ले बी यहां लिख देते हैं नॉट ऑफ a ले बी या 6 लेस देन 5 सेव किया रिफ्रेश किया तो हमारे पास फाइनल आंसर में ट्रू आएगा कैसे आया ट्रू 6 < 5 फाल्स होता है और फाल्स का ऑपोजिट ट्रू होता है तो ट्रू प्रिंट कर दिया यहीं पर अगर हम कोई अंदर ट्रू कंडीशन दे देते लेट्स सपोज हमने लिखा होता a ट्र = 6 उस केस में ये वैल्यू ट्रू होती तो ट्रू प्रिंट होना चाहिए था पर नॉट उसका अपोजिट प्रिंट करके देगा यानी हमें फाल्स प्रिंट करके देगा तो इस तरीके से हमारे लॉजिकल ऑपरेटर्स काम करते हैं जावास्क्रिप्ट के अंदर अब ये तो हमने सीख लिए ऑपरेटर्स इनसे हम बेसिक मैथ बेसिक एक्सप्रेशंस को इवेलुएट कर सकते हैं पर हमने ऑपरेटर्स को सीखा क्यों हमने ऑपरेटर्स को इसलिए सीखा ताकि रियल लाइफ के अंदर अगर हमें कोई कंडीशन चेक करनी हो जावास्क्रिप्ट के अंदर कोड लिख के तो उन कंडीशंस को हम चेक कर पाएं और कंडीशंस को चेक करने के लिए हम यूज करते हैं जावास्क्रिप्ट के अंदर काफी पावरफुल चीज जिसका नाम होता है कंडीशनल स्टेटमेंट्स कंडीशनल स्टेटमेंट्स का काम होता है टू इंप्लीमेंट सम कंडीशन इन द कोड फॉर एग्जांपल हम अपनी वेबसाइट के ऊपर डार्क मोड डालना चाहते हैं कि हमारा लाइट मोड में वेबसाइट अभी काम करनी चाहिए या डार्क मोड के अंदर काम करनी चाहिए तो उसके लिए हम कोई वेरिएबल बना सकते हैं मोड और उस मोड को हम चेक कर लेंगे इस मोड की वैल्यू क्या है अगर मोड की वैल्यू है डार्क मोड तो उस केस में क्या करेंगे बैकग्राउंड कलर को हम सेट कर सकते हैं ब्लैक और लाइट मोड है मोड की वैल्यू तो उस केस में बैकग्राउंड कलर को हम सेट कर सकते हैं टू लाइट तो इस तरीके से डिफरेंट डिफरेंट कंडीशंस होती हैं कोड के अंदर जिनके बेसिस पे हमें कुछ डिसीजन लेने पड़ सकते हैं फॉर एग्जांपल इसका रियल लाइफ सिचुएशन देखते हैं रियल लाइफ में हमें पता है दैट इफ आई नीड अ ड्राइवर्स लाइसेंस एक लाइसेंस चाहिए तो उसके लिए एज क्या होनी चाहिए उसके लिए एज 18 प्लस होनी चाहिए तो वहां पे कंडीशन आ जाती है कि अगर हमारी एज ग्रेटर दन 18 है तभी हमें लाइसेंस मिलेगा अगर एज लेस दन 18 है उस केस में हमें लाइसेंस नहीं मिल रहा होगा या फिर वोटिंग की एज की बात करें तो अगर एज की वैल्यू ग्रेटर दन 18 है तभी हम वोट कर पाएंगे नहीं तो वोट नहीं कर पाएंगे अगर हमारे जो टोटल मार्क्स हैं वो ग्रेटर दन 33 हैं तभी हम पास हो पाएंगे नेक्स्ट क्लास में जा पाएंगे नहीं तो हम नेक्स्ट क्लास में नहीं जा पाएंगे तो इस तरीके की कंडीशन होती है जिनको कई बार हमें कोड के अंदर रिप्रेजेंट करना होता है तो उनके लिए हम कंडीशनल स्टेटमेंट्स को यूज़ करते हैं अब कंडीशनल स्टेटमेंट्स हमारे पास जनरली तीन टाइप्स की होती हैं इनमें से सबसे पहली होगी हमारे पास इफ स्टेटमेंट इफ स्टेटमेंट का काम होता है कि किसी कंडीशन को चेक करना हम लिखते हैं इफ इफ हमारा एक रिजर्व्ड कीवर्ड होता है और फिर पैरेंस लगाते हैं इस तरीके से पैरेंस मतलब इन ब्रैकेट के अंदर फिर हम अपनी कंडीशन लिख देते हैं कंडीशन का मतलब होता है बेसिकली सम एक्सप्रेशन हमने कुछ एक्सप्रेशन लिख दिया जिसका फाइनल रिजल्ट या तो ट्रू आना चाहिए या फाल्स आना चाहिए अगर इस एक्सप्रेशन का फाइनल रिजल्ट ट्रू आ जाता है तो ट्रू के केस में क्या होगा जो इसके अंदर फिर हमने एक ब्लॉक बना दिया कर्ली ब्रेसस बना के और इस ब्लॉक के अंदर जो भी कोड लिखा होगा फिर वो कोड एग्जीक्यूट हो जाएगा पर अगर इस कंडीशन का फाइनल रिजल्ट फाल्स आ गया तो फिर यह कोड कभी एग्जीक्यूट नहीं होगा तो इस तरीके से हमारी इफ स्टेटमेंट काम करती है इसका एक एग्जांपल देखते हैं बहुत सिंपल सा हम एग्जांपल देखेंगे यहां पे अब हम ही पढ़ने वाले हैं कंडीशनल स्टेटमेंट्स को एग्जांपल के लिए लेट्स सपोज हमने कोई वेरिएबल बनाया एज एज की वैल्यू हमने रख दी 25 अब हम चेक कर सकते हैं अगर हमारी एज ग्रेटर दन 18 हुई तभी हम कसोल डलॉग करके प्रिंट करवा रहे होंगे यहां हम लिख सकते हैं कैन वोट अगर एज ग्रेटर दन 18 है तभी प्रिंट होके आएगा यू कैन वोट या यहां यू लिख देते हैं यू कैन वोट इसको सेव कर लेते हैं अब हमें पता है हमारी एज तो 25 है तो 25 ग्र द 18 क्या इवैल्यूएशन से क्या वैल्यू आएगी एक्सप्रेशन से हमारी वैल्यू आएगी ट्रू ट्रू आएगा तो ये चीज़ हमारे लिए एग्जीक्यूट हो जाएगी सेव किया रिफ्रेश किया यहां पे प्रिंट होके आ रहा है यू कैन वोट पर यहीं पर अगर हम लेट्स सपोज 16 कर देते सेव किया रिफ्रेश किया इस बार कुछ भी प्रिंट होके नहीं आएगा यहां हम एक और कंडीशन लिख सकते हैं इफ एज इज लेस दन 18 इसे ग्रेटर दन इक्वल टू 18 कह देते हैं इफ एज इज लेस दन 18 तो यहां कॉपी पेस्ट यू कैन नॉट कैन नॉट वोट सेव कर लिया रिफ्रेश किया तो इस बार प्रिंट होके आ रहा है यू कैन नॉट वोट तो इस तरीके से मल्टीपल इफ स्टेटमेंट्स को भी हम यूज़ कर सकते हैं तो इफ स्टेटमेंट का काम होता है किसी भी कंडीशन को चेक करना कंडीशन के बेसिस पे वो हमें कुछ फाइनल आउटपुट कुछ फाइनल रिजल्ट प्रिंट करके देती है और यहीं पर हम एज को 18 कर देते सेव करते रिफ्रेश करते तो उस केस में आता यू कैन वोट क्योंकि ये जो कंडीशन है ये इसके साथ मैच मैच हो गई पर इसके साथ मैच नहीं हुई अगर हम अपना डार्क मोड वाला एग्जांपल ले इसे कमेंट आउट कर देते हैं डार्क मोड वाले एग्जांपल के लिए लेट्स सपोज हम एक मोड वेरिएबल बनाते हैं मोड वेरिएबल के अंदर हमने लिखा हुआ है डार्क और एक और वेरिएबल बना रहे हैं लेट कलर कलर के अंदर अभी कोई वैल्यू नहीं दे र कलर अभी क्या है खाली है तो अगर हम चाहे तो हम चेक कर सकते हैं कि हमारे जो मोड की वैल्यू है दैट शुड बी इक्वल टू डार्क अगर मोड की वैल्यू डार्क है तो उस केस में जो हमारा कलर वेरिएबल है उसे हम क्या वैल्यू देना चाहते हैं उसको हम वैल्यू देना चाहते हैं कि बैकग्राउंड कलर हम ब्लैक हो जाए बट अगर हमारे मोड की वैल्यू लाइट है कि लाइट मोड में हम अपनी वेबसाइट को देखना चाहते हैं उस केस में कलर को बैकग्राउंड कलर को हम रखना चाहते हैं वाइट और लास्ट में हम क्या करेंगे लास्ट में कसोल डॉ लॉग करके हम प्रिंट करवा देंगे अपना कलर वेरिएबल कि फाइनली क्या कलर वेरिएबल की वैल्यू सेट हुई तो इस तरीके से ये हमारा प्रॉपर एक कोड है जिसको हमने लिख दिया इस कोड के अंदर क्या हो रहा है इस कोड के अंदर हमारे पास एक वेरिएबल है मोड जिसके अंदर डार्क वैल्यू है अभी और एक कलर है जिसको हमें सेट करना है अगर हमारा मोड जो है उसकी वैल्यू इक्वल टू डार्क है तो उस केस में कलर ब्लैक हो जाएगा अगर मोड की वैल्यू लाइट है उस केस में कलर वाइट हो जाएगा सेव किया रिफ्रेश किया मोड अभी डार्क मोड है तो बैकग्राउंड कलर इज ब्लैक हम बाद में डॉम नाम का एक टॉपिक सीखेंगे उससे एक्चुअली हम अपनी स्क्रीन का कलर ही चेंज कर सकते हैं ये जो वाइट स्क्रीन दिख रही है इसका कलर ही हम चेंज कर सकते हैं डिपेंडिंग अपॉन दिस वेरिएबल वैल्यू पर उतना एडवांस में हमें नहीं जाना है अभी अभी हम धीरे-धीरे चीजों को सीख रहे होंगे तो ये वेरिएबल की वैल्यू हमने चेंज कर दी यहीं पे अगर मैंने लाइट दे दिया होता सेव किया फ्रेश किया तो इस बार बैकग्राउंड कलर हमारे पास वाइट प्रिंट होके आ गया तो इस तरीके से हमारी इफ स्टेटमेंट काम करती है जैसे हमारी इफ स्टेटमेंट होती है वैसे ही हमारे पास एक और तरीके की कंडीशनल स्टेटमेंट होती है कॉल्ड इफ एल्स स्टेटमेंट इफ एल्स के अंदर इफ तो हमारे पास होता ही है उसके साथ हम एक एल्स को जोड़ देते हैं इफ एल्स कहता है कि अगर कंडीशन जो इफ के अंदर कंडीशन थी उसने ट्रू दे दिया तब तो इफ वाला पार्ट रन होगा और उसने फाल्स दे दिया तब एल्स वाला पार्ट रन होगा फॉर एग्जांपल यहां पे हमने लिखा है कि अगर मोड की वैल्यू डार्क मोड है तब तो कलर ब्लैक हो जाए एल्स अगर डार्क मोड नहीं है कुछ और है तो उस केस में कलर को वाइट कर दो तो इससे हमें बार-बार जो इफ स्टेटमेंट है वो नहीं लिखनी पड़ती एक अगर हम ट्रू एंड फाल्स वाला केस हमारे पास पेयर बन जाता है तो हम इफ एल्स को यूज़ कर लेते हैं फॉर एग्जांपल यहां पे अगर मोड की वैल्यू डार्क है तो उस केस में तो कलर ब्लैक हो जाए और एल्स के केस में हम क्या कर दें अपने कलर को वाइट कर दें इस पार्ट को हम हटा सकते हैं सेव कर लेते हैं रिफ्रेश किया वाइट आ गया हमारे पास क्यों आया वाइट यहां पे मोड की वैल्यू लाइट है इसने देखा क्या डार्क मोड है डार्क मोड नहीं है तो बाकी सारे केसेस में क्या होगा कलर वाइट हो जाएगा अगर हम यहां पर कुछ भी कर देते ब्लू कर देते सेव किया तब भी हमारे पास वाइट ही प्रिंट होके आया क्यों क्योंकि ये सिर्फ चेक कर रहा है कि डार्क मोड नहीं होना चाहिए बाकी कुछ भी हो तो उस केस में कलर हमारा वाइट हो जाएगा इसी एग्जांपल को एज के साथ चेक कर लेते हैं लेट एज इज इक्वल टू लेट्स मेक इट 25 अगर हमारी एज की वैल्यू ग्रेटर दन इक्वल टू 18 है तो उस केस में हम प्रिंट करवा रहे होंगे वोट एल्स वाले केसेस में हम कंसोल डॉ लॉग करके प्रिंट करवाएंगे नॉट वोट तो अगर एक बार कंडीशन इफ के साथ मैच हो जाती है तो एल्स वाला पार्ट रन नहीं करता रिफ्रेश करेंगे वोट प्रिंट होके आया सिर्फ ऐसा नहीं है दोनों प्रिंट होंगे पर अगर यहीं हमने 16 कर दिया होता सेव किया रिफ्रेश किया नॉट वट प्रिंट होके आया आल्सो एल्स को हम बिना इफ के नहीं लिख सकते जैसे इफ को तो हम बार-बार बार-बार कुछ भी इफ करके स्टेटमेंट के अंदर कुछ भी हम लिख सकते हैं पर अगर सिंपली हम लिखना चाहे कि नहीं एल्स के अंदर कुछ हो जाए तो यह हमें एरर दे देगा कि डिक्ले रेशन और स्टेटमेंट एक्सपेक्टेड यानी एल्स हमेशा इफ के साथ ही आता है इफ के बिना हमारे पास नहीं आएगा तो इस तरीके से हमारा इफ एल्स काम करता है अब यहां हम एक और एग्जांपल देख सकते हैं व्हिच इज कि हमें फाइंड आउट करना है नंबर ऑड है या इवन है कोई भी नंबर अगर हमें दिया होगा लेट्स सपोज हमें नंबर फाइ दिया है तो हमें पता है ये हमारा ऑड नंबर होता है अगर हमें नंबर 10 दिया है यह पता है हमें हमारा इवन नंबर होता है टू भी इवन होता है फोर भी इवन होता है वन ऑड होता है थ्री ऑड होता है तो इस तरीके से कुछ ऑड नंबर्स होते हैं कुछ इवन नंबर्स होते हैं ऑड इवन का कैसे पता चलता है हमें पता है वो नंबर जो टू से डिवाइड हो जाता है वो एक इवन नंबर होता है और वो नंबर जो टू से डिवाइड नहीं होता वो एक ऑड नंबर होता है टू से डिवाइड होने का मतलब है कि एक नंबर टू से कंप्लीट डिवाइड होके जीरो दे दे रिमाइंडर में वही तो नंबर कंप्लीट डिवाइड होगा जो डिवाइड होके रो दे दे तो इसका मतलब कोई भी नंबर a अगर हमारे पास है तो वो मॉड्यूस में मॉडलो में टू के साथ हमें क्या रिटर्न करके दे दे हमें ज़ीरो रिटर्न करके दे दे तो ये a क्या बन जाएगा ये a हमारा एक इवन नंबर बन जाएगा तो एक कंडीशन होती है प्रोग्रामिंग के अंदर ऑड और इवन नंबर को चेक करने की कि कोई भी नंबर x अगर हमारे पास है तो x मॉड्यूस 2 की वैल्यू अगर फाइनली इक्वल टू 0 आ जाए तो उस केस में ये क्या बन जाएगा ये एक इवन नंबर बन जाएगा तो यहां पे इस एक्सप्रेशन को हम जीरो के साथ कंपेयर करके देखते हैं तो इसी तरीके से हम किसी भी नंबर को चेक कर सकते हैं कोई भी नंबर ऑड है या इवन है यह हमारा नंबर हो गया लेट्स सपोज हमारे पास नंबर है 10 तो हम यहां चेक कर सकते हैं अगर नम मॉड्यूस टू ट्रिपल इक्वल टू 0 के इक्वल है मतलब इस वैल्यू का रिमाइंडर टू से जब नंबर को डिवाइड करेंगे अगर रिमाइंडर जीरो आ गया इक्वल टू 0 तो उस केस में हम प्रिंट करवा सकते हैं कसोल डलॉग इवन एंड बाकी केसेस में हम प्रिंट करवा सकते हैं कसोल डलॉग ऑट इसको सेव कर लिया रिफ्रेश किया हमारे पास आ गया इवन इनफैक्ट पूरा हम प्रिंट करवा सकते हैं यहां लिख सकते हैं नम कॉमा और यहां इज इवन एंड इसी तरीके से यहां लिख सकते हैं इज ऑड सेव कर लिया रिफ्रेश किया यहां प्रिंट होके आ रहा है 10 इज इवन यहीं पर अगर हमारे पास सेवन होता रिफ्रेश करते तो यहां प्रिंट होके आता 7 इज ऑड 15 होता 15 के केस में भी प्रिंट होके आता 15 इज ऑड और 20 होता तो 20 के केस में प्रिंट होके आता 20 इज इवन तो इस तरीके से हमारा कोई भी नंबर ऑड आ रहा है या इवन आ रहा है उसकी कंडीशन भी हम चेक कर सकते हैं यूजिंग सम लॉजिक कुछ हमें लॉजिक यूज करना पड़ेगा कि कंडीशन चेक किस बेसिस पे की जाए और फिर हमें अपने नॉर्मल इफ एल्स के सिंटेक्स को लिखना पड़ेगा अच्छा सिंटेक्स एक टर्म होती है प्रोग्रामिंग के अंदर जो आपको बार-बार देखने को मिल सकती है सिंटेक्स का कोई कॉम्प्लेक्टेड किसी भी प्रोग्रामिंग लैंग्वेज के रूल्स को उसका सिंटेक्स कहते हैं जैसे इंग्लिश के अंदर हमें पता है सेंटेंस के लास्ट में आपको डॉट लिखना ही लिखना पड़ेगा यहां पे भी हमें पता है कोई भी स्टेटमेंट अगर हम लिख रहे हैं वहां पे आपको सेमीकलन लगाना चाहिए या इफ जो है उसके बाद हमें कुछ ना कुछ कंडीशन लिखनी पड़ती है अगर मैं डायरेक्टली इस तरीके से लिखूं इफ और यहां मैं ए बी सीडी इस तरीके से मैंने कुछ लिख दिया तो ये क्या देगा ये मुझे एरर देगा यहां पे वो कह रहा है कुछ कुछ चीजें हैं कुछ-कुछ रूल्स हैं जिसके आप खिलाफ जाके ये इफ ए बी सीडी आपने लिख दिया है तो हर लैंग्वेज के अपने रूल्स होते हैं जिसको हम उसका सिंटेक्स कहते हैं नेक्स्ट हम बढ़ने वाले हैं अपने थर्ड टाइप की एफएल स्टेटमेंट की तरफ व्हिच इज एल्स इफ स्टेटमेंट्स एल्स इफ स्टेटमेंट का बेसिकली काम होता है कि जब हम अपनी इफ स्टेटमेंट लिखते हैं उसके अंदर हम किसी कंडीशन को चेक कर पाते हैं फॉर एग्जांपल हमने यहां पे कंडीशन वन को चेक कर लिया और उसके बाद हमने इफ का ब्लॉक बना दिया उसके बाद हम एल्स लिख देते हैं तो एल्स से क्या होता है अगर ये कंडीशन सच नहीं हुई तो तो फिर ये कर दो पर कभी-कभी हमें मल्टीपल कंडीशंस चेक करनी पड़ सकती है फॉर एग्जांपल मुझे एक कंडीशन वन भी चेक करनी पड़ सकती है कंडीशन टू भी चेक करनी पड़ सकती है कंडीशन थ्री भी चेक करनी पड़ सकती है कंडीशन फोर भी चेक करनी पड़ सकती है जैसे इसमें ये हो सकता है कि बैकग्राउंड कलर आपको डार्क चाहिए क्या आप डार्क मोड में है क्या आप लाइट मोड में है क्या आपको बैकग्राउंड कलर ब्लू चाहिए या आपको बैकग्राउंड कलर लेट्स सपोज पिंक चाहिए तो ये चार कंडीशंस है जिनको मुझे चेक करना है तो ऐसे केसेस में बार-बार इफ लिखने की बजाय हमारे पास एक होता है एल्स इफ स्टेटमेंट एल्स इफ कहता है कि अगर इफ स्टेटमेंट काम नहीं की इफ स्टेटमेंट ने काम नहीं किया तो उसके बाद आप एल्स इफ चेक कर लो तो यहां पर हम अपनी एल्स इफ स्टेटमेंट को चेक करेंगे जो हमारी कंडीशन टू के लिए चेक करेगी हमारे पास तो यहां एल्स इफ लिखकर हम अपनी कंडीशन टू को चेक करते हैं और फिर उसका ब्लॉक बनाते हैं एंड हम कितने भी चाहे तो एल्स इफ लगातार लिख सकते हैं एंड फिर लास्ट में जब हमारे पास एल्स इफ खत्म हो जाते हैं तो लास्ट में हम अपने एल्स को लिख सकते हैं तो जनरली इस तरीके से पहले हमारे पास इफ स्टेटमेंट आती है फिर हमारे पास एल्स इफ आते हैं जिनके अंदर हम और कंडीशंस को चेक कर सकते हैं और अगर ऊपर वाली किसी भी कंडीशन से मैच नहीं हुआ तो उसके बाद हमारे पास एल्स आ जाता है जिसमें फाइनल आंसर कुछ हम लिख देते हैं जैसे हमने यहां पर चेक किया कि अगर ए लेस दन 18 है तो उस केस में प्रिंट कर दो जूनियर लेकिन एज लेस दन 18 नहीं है तो फिर उस केस में चेक करो क्या एज ग्रेटर दन 60 है उस केस में प्रिंट कर दो सीनियर और अगर दोनों में से किसी से मैच नहीं करता तो मतलब 18 और 60 के बीच की कोई एज होगी तो उस केस में प्रिंट कर दो मिडल तो इस तरीके से सारी मल्टीपल कंडीशन को हमने चेक कर लिया यहां पे एग्जांपल के थ्रू हम चेक कर सकते हैं लेट्स ूज आवर मोड वाला एग्जांपल लेट मोड यहां मोड की वैल्यू कुछ भी हो सकती है फॉर एग्जांपल हमारे पास डार्क मोड है और एक वेरिएबल हमने बना लिया कलर अब यहां हम चेक कर सकते हैं अगर हमारे मोड की वैल्यू इक्वल टू डार्क है तो उस केस में तो हमें चाहिए कि हमारे बैकग्राउंड का जो कलर है दैट शुड बी इक्वल टू ब्लैक बट एल्स इफ इस तरीके से एल्स करके हम एक और फ लिखते हैं बीच में हमारी स्पेस आएगी और यहां पे हम अपनी सेकंड कंडीशन को चेक कर सकते हैं यानी मोड की वैल्यू अगर लेट्स सपोज ब्लू हो जाए तो उस केस में हम चाहते हैं कलर की वैल्यू भी हमारे पास ब्लू होनी चाहिए एंड एक और एल सेफ हम चाहे तो लगा सकते हैं अगर मोड की वैल्यू पिंक हो गई लेट्स यूज अ ट्रिपल इक्वल टू एवरी वेर मोड की वैल्यू अगर पिंक हो गई तो उस केस में हम चाहते हैं हमारे कलर की वैल्यू भी पिंक हो जानी चाहिए एंड लास्ट में एक एल्स केस दे सकते हैं कि लास्ट में और कुछ नहीं हुआ तो कलर की वैल्यू आपको वाइट सेट करनी है लेट्स मेक इट इक्वल टू बिकॉज कलर इज अ वेरिएबल इसको सेव कर लेते हैं और लास्ट में जाकर कंसोल डॉट लॉग कर देते हैं कलर सेव किया अभी मोड डार्क है तो इसके साथ मैच हो जाएगा तो हमारे पास कलर में डार्क आ जाएगा रिफ्रेश किया वी विल गेट ब्लैक अब यहीं पर मोड को हमने ब्लू कर दिया होता सेव किया रिफ्रेश किया तो हमारे पास ब्लू आ जाता कलर अगर हमने मोड को लेट्स सपोज हमने किया होता सिल्वर कुछ भी मोड रख दिया हमने बस जो इन कंडीशन से मैच ना करे इन कंडीशन से मैच नहीं किया तो फाइनली हमारे पास वाइट आएगा सेव किया रिफ्रेश किया फाइनल कलर हमारे पास आ गया इक्वल टू वाइट तो इस तरीके से बीच में अगर हमें मल्टीपल कंडीशंस चेक करनी होती है तो उसके लिए हम अपने एल्स इफ ब्लॉक को यूज करते हैं अब इफ एल्स के अंदर ही लेट्स सपोज हमारे पास अगर ऐसा कोई केस होता है जिसमें हमें सिर्फ इफ स्टेटमेंट लिखनी है या हमारे पास ब्लॉक में करवाने के लिए एक ही काम है सिंगल काम फॉर एग्जांपल मैंने लिखा अगर मेरे मोड की वैल्यू डार्क है तो उस केस में मुझे मोड को ही प्रिंट करना है तो यहां हम क्या कर सकते हैं बिना अपना एक ब्लॉक क्रिएट किए हुए हम अपना एक सिंगल लाइन का काम कर सकते हैं फॉर एग्जांपल मुझे एक ही लाइन का काम करना है अगर मेरे मोड की वैल्यू डार्क के इक्वल है तो उस केस में प्रिंट कर दो मोड की वैल्यू को तो ये जो लाइन है ये हमें कोई एरर नहीं देगी सेव करेंगे रिफ्रेश करेंगे यहां पर अगर इफ आई सेट इट टू डार्क सेव किया रिफ्रेश किया ये ब्लैक आ गया और फिर मेरे पास डार्क प्रिंट होके आ गया तो इस केस में ये लाइन कोई हमारे पास एरर नहीं देगी और इस तरीके से भी हम स्टेटमेंट्स को लिख सकते हैं ये जो स्टेटमेंट है ये तभी वर्क करेगी जब कंडीशन के ट्रू होने के बाद हमें सिर्फ एक ही काम कराना हो वो काम कुछ कुछ भी हो सकता है वो काम वेरिएबल को कोई वैल्यू असाइन करना भी हो सकता है वो काम कुछ प्रिंट करवाना भी हो सकता है ये स्टेटमेंट उस केसेस में वर्क कर जाएगी पर जनरली इस तरीके से हम अपने कोड को नहीं लिखेंगे क्योंकि अच्छा प्रोफेशनल तरीका नहीं है जनरली चाहे हमें एक काम कराना हो या हमें बहुत सारे काम कराना हो हम हमेशा अपने ब्लॉक्स को यूज करेंगे यानी इस तरीके से अपने कर्ली ब्रेसे के अंदर हम अपने पूरे कोड को लिखने वाले हैं तो इस तरीके की जो स्टेटमेंट होती हैं वो इजी टू अंडरस्टैंड होती हैं इजी टू रीड होती है प्लस काफी सारी कंपनीज होती हैं जो इंटरनली यही कन्वेंशन फॉलो करती हैं यही तरीका फॉलो करती है अपने एफएल स्टेटमेंट्स को लिखने का अब ये तो हो गई हमारी कंडीशनल स्टेटमेंट्स जिनकी हेल्प से हम अपनी बहुत सारी कंडीशंस को चेक कर सकते हैं अब हम रिविजिट करने वाले हैं अपने एक और ऑपरेटर को व्हिच इज अ स्पेशल ऑपरेटर कॉल्ड टरनरी ऑपरेटर टरनरी ऑपरेटर स्पेशल ऑपरेटर क्यों है स्पेशल ऑपरेटर इसलिए है क्योंकि अभी तक हमने ऐसे ऑपरेटर देख लिए जो दो ऑपरेंट के ऊपर काम करते हैं दो ऑपरेंड्स यानी a + b a और b दोनों ऑपरेंड्स हैं हमने ऐसे भी ऑपरेटर देख लिए जो एक ऑपरेंट के ऊपर काम करते हैं हमारे यूनिरी ऑपरेटर्स जैसे हमारा a + प्स हो गया a माइनस माइनस हो गया अब हम देखने वाले ऐसा ऑपरेटर जो तीन ऑपरेंट के ऊपर काम करता है और तीन ऑपरेंट क्या होते हैं तीन ऑपरेंट में एक होती है हमारी कंडीशन और दो होते हैं हमारे आउटपुट हमारा जो टरनरी ऑपरेटर होता है जो क्वेश्चन मार्क है और ये जो कोलन है इसे हम अपना टरनरी ऑपरेटर कहते हैं टरनरी ऑपरेटर ऐसे काम करता है ए क्वेश्चन मार्क बी कोलन सी और इसका बेसिक मतलब होता है कि a के अंदर कोई कंडीशन है और कंडीशन के ऊपर क्वेश्चन मार्क लगा के हम पूछ रहे हैं इस कंडीशन की वैल्यू ट्रू है या इस कंडीशन की वैल्यू फाल्स है अगर कंडीशन की a वाली कंडीशन की वैल्यू ट्रू हो जाती है तो उस केस में b में जो लिखा होगा वो सच हो जाएगा लेकिन अगर इसकी वैल्यू फाल्स हो गई तो c वाला एग्जीक्यूट हो जाएगा फॉर एग्जांपल हमने कोई कंडीशन दी उसको हम क्वेश्चन कर रहे हैं इज इट ट्रू और इज इट फॉल्स अगर ट्रू हुआ तो पहले वाली चीज एग्जीक्यूट हो जाएगी और फाल्स हुआ तो दूसरे वाली चीज एग्जीक्यूट हो जाएगी जैसे हमने यहां पे चेक किया कि एज की वैल्यू ग्रेटर दन 18 है क्वेश्चन मार्क अगर एज की वैल्यू ग्रेटर दन 18 है तो हमारे पास एडल्ट आ जाएगा नहीं तो इस कोलन का मतलब है नहीं तो हमारे पास नॉट एडल्ट आ जाएगा इसको एक बार एग्जीक्यूट करके देखते हैं लेट्स रिमूव ऑल ऑफ दिस लेट्स मेक अ वेरिएबल कॉल्ड एज एज की वैल्यू अभी हम रख लेते हैं 25 हम यहां चेक कर सकते हैं अगर एज की वैल्यू ग्रेटर दन इक्वल टू 18 है क्वेश्चन मार्क तो हमारे पास एडल्ट आ जाएगा नहीं तो हमारे पास नॉट एडल्ट आ जाएगा सेव किया रिफ्रेश किया कुछ प्रिंट हो के नहीं आएगा क्यों क्योंकि हम कुछ प्रिंट ही नहीं करा रहे हम तो सिर्फ एक स्ट्रिंग कह रहे हैं ये रिजल्ट होगा नहीं तो ये रिजल्ट होगा हम चाहे तो उस रिजल्ट को किसी नए वेरिएबल के अंदर स्टोर भी कर सकते हैं लेट रिजल्ट इज इक्वल टू तो ये जो पूरा का पूरा हमारा एक्सप्रेशन है इसका रिजल्ट इस वेरिएबल के अंदर जाके स्टोर हो जाएगा और फिर हम अपने रिजल्ट को प्रिंट करवा सकते हैं तो ये हमने अपने रिजल्ट को प्रिंट करवा दिया सेव कर दिया रिफ्रेश किया हमारे पास आ गया एडल्ट क्योंकि हमारी एज जो है ग्रेटर दन 18 है तो 25 ग्र = 18 हमें एडल्ट रिटर्न करके देगा बट इफ वी मेक इट 16 सेव किया रिफ्रेश किया तो फिर हमारे पास नॉट रिजल्ट आएगा बट मेजर चीज है कि ये हमारा टरनरी ऑपरेटर है अब हम चाहे तो डायरेक्टली यहां पर भी प्रिंट कर सकते हैं अगर हम ये रिजल्ट वेरिएबल ना यूज़ करें और हम सीधा यहां पे लिख दें कल डलॉग इस तरीके से एंड एक और कसोल डलॉग स्टेटमेंट लिख दें यहां पे सेव तो इस तरीके से दो स्टेटमेंट्स को भी एक साथ लिखा जा सकता है रिफ्रेश किया प्रिंट हो गया है नॉट एडल्ट बट यहां दोबारा हमने 25 कर दिया सेव किया रिफ्रेश किया इस बार प्रिंट होके आया एडल्ट अब ये जो चीज है ये कंप्लीट वैलिड है हम इस तरीके से चीजें लिख सकते हैं बट जनरली हम ये प्रेफर नहीं करेंगे टरनरी ऑपरेटर को यूज कर सकते हैं कोड के अंदर बिल्कुल यूज करना प्रेफर कर सकते हैं पर जनरली अगर हमें कोई छोटी सी कंडीशन चेक करनी होती है जैसे सिर्फ अगर हमें स्ट्रिंग्स ही लिखनी होती ये जो हम एडल्ट नॉन एडल्ट है सिर्फ इतना काम अगर हमें करना होता तो फिर हम टरनरी ऑपरेटर को यूज कर सकते थे जनरली प्रिंट करवाने के लिए हम यूज नहीं करते मतलब अगर ये स्टेटमेंट बहुत लंबी हो जाती है बहुत बड़ी हो जाती है तो उस केस में हम एफ एल्स को प्रेफर करेंगे तो टरनरी ऑपरेटर कुछ नहीं है एक ऐसा ऑपरेटर है जो इफ एल्स को ही लिखने का दूसरा तरीका है बेसिकली इस कंडीशन को चेक कर रहे हैं अगर ट्रू हो गया इफ हो गया हो गया तो ये एग्जीक्यूट हो जाएगा एल्स हो गया तो ये एग्जीक्यूट हो जाएगा तो दिस इज नथिंग बट अ सिंपलर या इसको कंपैक्ट इफ एल्स हम कह सकते हैं ज्यादा कॉम्पेक्टनेस सो दिस वाज ऑल अबाउट ऑपरेटर्स एंड कंडीशनल स्टेटमेंट्स इसके बाद एक और छोटा सा टॉपिक है जिसको मैं टच करना चाह रही थी जो हमारे एमडीएन डॉक्स होते हैं यानी अगर आपका कभी मन करता है कि मुझे जावास्क्रिप्ट के अंदर और चीजें एक्सप्लोर करनी है मुझे और कुछ नया टॉपिक है जिसको जाके पढ़ना है मुझे कुछ और सीखना है या मुझे एग्जैक्ट डॉक्यूमेंटेशन देखनी है कि इन सारी चीजों का मतलब क्या है मुझे थोड़ी सी थ्योरी पढ़नी है क्योंकि रीडिंग भी बहुत इंपॉर्टेंट हैबिट है एक प्रोग्रामर के लिए तो उसके लिए हमारे पास डॉक्यूमेंटेशन होती है ऑनलाइन जिसको हम एमडीएन डॉक्यूमेंटेशन कहते हैं और हम सिंपली जाके सर्च कर सकते हैं एमडीए के लिए तो एमडीए वेब डॉक्स यह है डेवलपर mozilla.org तो मोला हमारी ऑर्गेनाइजेशन है तो ये फ्री डॉक्यूमेंटेशन है डॉक्यूमेंटेशन डेवलपर्स नहीं लिखी है तो इसके अंदर हमारी जो सीएसएस कंडीशनल स्टेटमेंट्स जैसे टर्नर ऑपरेटर के बारे में मुझे पढ़ना है तो आई कैन गो एंड सी फॉर टर्नर ऑपरेटर ये मुझे बता रहा है टरनरी ऑपरेटर इज द ओनली जावास्क्रिप्ट ऑपरेटर दैट टेक्स थ्री ऑपरेंट अ कंडीशन उसके बाद ट्रुथी वैल्यू इस तरीके से कोलन यहां पे एग्जांपल भी मुझे दिखा दिया कि इस तरीके से हमारे टरनरी ऑपरेटर जो है उसको लिखा जाता है अब ये फंक्शन क्या है उसको देख के कंफ्यूज नहीं होना फंक्शंस को हम बाद में पढ़ रहे होंगे पर यह हमारा तरीका होता है टरनरी ऑपरेटर्स को लिखने का कि कंडीशन को हम चेक करते हैं फिर अगर एक्सप्रेशन ट्रू होता है तो ये एग्जीक्यूट होगा नहीं तो ये वैल्यू एग्जीक्यूट होगी तो इस तरीके से किसी भी चीज के बारे में इन जावास्क्रिप्ट या अगर आप एटीएमएल सीएसएस सीख रहे हो तो वहां पे भी अगर आपको कुछ भी सीखना है कुछ भी जानना है हम एमडीएन डॉक्यूमेंटेशंस के अंदर जाके सर्च कर सकते हैं और यहीं पर वैसे इफ एल्स के अलावा कंडीशनल स्टेटमेंट्स में एक और तरीका होता है कंडीशन को चेक करने का व्हिच इज कॉल्ड स्विच स्विच वैसे रियल लाइफ डे टू डे प्रोग्रामिंग के अंदर उतना हम यूज़ नहीं करते ना अपने प्रोजेक्ट्स के अंदर उतना यूज़ करेंगे ना अपने रियल लाइफ जो हमारी डे टू डे डेवलपमेंट होती है उसके अंदर भी उतना यूज़ नहीं होता स्विच स्टेटमेंट पर ये भी एक तरीका होता है स्विच स्टेटमेंट कंडीशन को चेक करने का इफ वी वांट टू चेक स्विच स्टेटमेंट तो हम सिंपली जाके कर सकते हैं वी कैन लुक फॉर स्विच स्टेटमेंट या सिंपली स्विच सर्च कर सकते हैं तो ये हमारी स्विच स्टेटमेंट आ गई तो स्विच स्टेटमेंट क्या करती है ये एक सिंगल एक्सप्रेशन के बेसिस पे वैल्यू मैच करके आउटपुट निकालती है फॉर एग्जांपल यहां हमने एक्सप्रेशन के अंदर लिख दिया पपायास तो ये क्या करेगी स्विच के अंदर उस एक्सप्रेशन को इस तरीके से हम स्विच लिखते हैं स्विच लिखने का तरीका होता है हम फिर पेंसिस लगाते हैं इसको थोड़ा सा मैं जूम कर लेती हूं हम फिर अपने पैरेंस लगाते हैं और वहां पे हम इस तरीके से स्विच लिखते हैं फिर हम अपने एक्सप्रेशन को लिखते हैं तो इसके अंदर पपायास आ गया और फिर इस तरीके से कर्ली ब्रेसेज लगा के हम चेक कर रहे होते हैं तो यहां स्विच के अंदर हम केसेस लिख देते हैं कि ये केस सच होगा तो ये चीज होनी चाहिए दूसरा केस सच होगा तो ये चीज होनी चाहिए तीसरा केस सच होगा तो ये चीज होनी चाहिए इस तरीके से हम काफी सारी कंडीशंस लिख देते हैं तो मान लो अगर पपायास है क्या ये ऑरेंजेस वाले केस से मैच कर रहा है नहीं कर रहा मैंगो वाले से मैच कर रहा है नहीं कर रहा पपाया से मैच कर रहा है पपाया से मैच कर रहा है तो कसोल डॉट लॉग करके हम इस चीज को प्रिंट करवा देंगे और जैसे ही हमने प्रिंट करवा दिया वैसे ही यहां से ब्रेक कर जाएंगे ब्रेक करने का मतलब होता है स्विच से आप बाहर आ गए वरना जनरली स्विच ऐसे काम करता है एक भी कंडीशन चेक हो गई तो उसके नीचे वाली सारी की सारी कंडीशंस के साथ मैच कर देगा तो स्विच थोड़ा सा इंटरेस्टिंग अलग तरीके से काम करता है पर क्योंकि इतना ज्यादा फ्रीक्वेंसी सिंटेक्स होता है करने का एक्सप्रेशन क्या होता है डिस्क्रिप्शन में काफी सारी चीजें आपको देखने को मिल जाएंगी ये एक और एग्जांपल इन्होंने दिखा रखा है आप इस एग्जांपल को कॉपी करके अपने जावास्क्रिप्ट की फाइल के अंदर रन करके देख सकते हो तो दिस आई एम गिविंग टू यू एज अ होमवर्क प्रॉब्लम इससे हम दो चीजें सीख जाएंगे स्विच स्टेटमेंट के बारे में सीख जाएंगे सेकंड चीज सीखेंगे कि एमडीएन के अंदर डॉक्यूमेंटेशन किस तरीके से पढ़नी होती है वो भी एक अच्छे प्रोग्रामर की निशानी है क्योंकि इन केस आपको कल को हो सकता है आप कुछ नया ही फीचर बिल्ड करना चाहते हो उसके अंदर कई चीजें आपको खुद से सीखनी पड़ेगी तो खुद से सीखने वाली जो चीज है वो तभी आएगी जब हम जाके एक्सटर्नल डॉक्यूमेंटेशंस को पढ़ेंगे जब हम खुद से जाके चीजें एक्सप्लोर करेंगे जो चीज़ लेक्चर के अंदर कवर नहीं हुई उसको मैं जाके खुद से अपने टाइम में जाके एक्सप्लोर करूं तो यह चीज है जिसको आप जाके पढ़ सकते हो इन एमडीएन डॉक्यूमेंटेशन दिस द लिंक इज पॉज करके खुद से सॉल्व करने की कोशिश करनी है और प्रैक्टिस क्वेश्चन के अंदर भी हम कुछ नया सीखने वाले हैं अब पहला प्रैक्टिस क्वेश्चन कह रहा है गेट यूजर यूजर यानी जो हमारी वेबसाइट यूज करता है गेट यूजर टू इनपुट अ नंबर यूजिंग प्रोमट एंटर अ नंबर अब यहां पे प्रोमट जो है ये शब्द हम फर्स्ट टाइम सुन रहे हैं प्रोमट एंड अलर्ट ये दो चीजें होती हैं जावास्क्रिप्ट के अंदर अलर्ट को हमने ऑलरेडी देखा था अपनी फर्स्ट क्लास के अंदर बेसिकली अगर मैंने अपने कोड के अंदर यहां आ जाते हैं अगर मैंने अपने कोड के अंदर लिख दिया अलर्ट अलर्ट होता है एक मैसेज अगर मैंने लिख दिया अलर्ट तो ये क्या करता है एक मैसेज लेता है अब ये जो सजेशंस कहां से आ रही है ये सजेशन भी आप देखोगे वीएस कोड के अंदर कहां से आ रहे हैं एमडीएन रेफरेंस से आ रहे हैं तो अलर्ट के अंदर अगर मैंने लिख दिया हेलो तो ये क्या करेगा ये मेरी वेबसाइट के ऊपर मुझे एक मैसेज डिस्प्ले करके दिखाई देगा एज अ पॉपअप इसको सेव कर लेते हैं रिफ्रेश किया तो ये क्या आया मेरा एक पॉपअप आया दिस पेज सेज ये पेज कह रहा है हेलो इसको ओके कर देंगे तो चला जाएगा तो ये वन टाइम वन टाइम पॉपअप हमारे लिए क्रिएट करके देता है तो यह काम होता है अलर्ट का अब जैसे हमारे पास अलर्ट होता है वैसे ही हमारे पास वी हैव समथिंग कॉल्ड प्रोमट प्रोमट का काम भी कुछ मैसेज देना ही होता है जैसे मैंने क्रिएट किया प्रोमट हेलो तो यह क्या करेगा यह मुझे कुछ मैसेज देगा सेव किया रिफ्रेश किया तो यहां भी आ गया दिस पेज सेज हेलो पर प्रोमट में एक और एडिशनल फंक्शनैलिटी होती है कि प्रोमट मैसेज तो दे देगा बट साथ में कुछ इनपुट भी ले सकता है मतलब यहां पे मैं अपना नाम इनपुट करके इसे दे सकती हूं तो हेलो के बेसिस पे मैंने लिख दिया श्रद्धा और इसको कर दिया ओके अब यहां तो एज सच हमने कुछ नहीं किया पर ये जो प्रोमट जो भी इनपुट लेता है उसकी वैल्यू को हम किसी वेरिएबल के अंदर सेव करवा सकते हैं जैसे मैंने वेरिएबल ले लिया लेट नेम इज इक्वल टू दिस वेरिएबल और फिर हम क्या करेंगे इस वेरिएबल के नाम को हम प्रिंट करवा देंगे कसोल डलॉग नेम सेव कर लेते हैं रिफ्रेश किया हेलो कह रहा है मैंने अपना नाम लिखा श्रद्धा ओके किया तो मेरा नाम मेरे लिए प्रिंट होके आ गया दोबारा रिफ्रेश करेंगे मैंने अपना नाम लिखा अपना कॉलेज ओके किया मेरे लिए अपना कॉलेज प्रिंट होके आ गया दोबारा रिफ्रेश करेंगे मैंने अपना नाम कंप्लीट नाम इसे लिख के दिया श्रद्धा खाप ओके किया मेरा पूरा नाम मेरे लिए प्रिंट होके आ गया तो प्रॉम्स हमारे लिए एक टेंपररी तरीका हो सकता है यूजर से इनपुट लेने का अभी जब मैंने इस वेबसाइट को अपना नाम दिया तो मैं कौन हूं मैं यूजर हूं जो इस वेबसाइट को कुछ इंफॉर्मेशन दे रही हूं ओके किया और फिर यह वेबसाइट उस इंफॉर्मेशन को सेव कर रही है उसे प्रिंट करवा सकती है उसके साथ कुछ भी काम कर सकती है तो प्रॉन्प्ट्स हमारा एक तरीका होता है यूजर से कुछ भी इनपुट लेने का तो यहां हमारा सवाल हमें यही कह रहा है कि आपको यूजर से एक इनपुट लेना है इन द फॉर्म ऑफ अ प्रोमट प्र प्रंट में आप लिखोगे एंटर अ नंबर और यूजर कोई नंबर हमें एंटर करके देगा फिर हमें चेक करना है क्या ये नंबर फाइव का मल्टीपल है या नहीं है फाइव का मल्टीपल कोई भी नंबर कब होता है फाइव का मल्टीपल तब होता है जब वो फाइव की टेबल में आता है और कैसे पता चलेगा कोई भी नंबर फाइव की टेबल में आता है क्या जैसे फाइव हो गया जैसे 10 हो गया 15 हो गया 20 हो गया 25 हो गया ये वो सारे के सारे नंबर्स हैं जो फाइव से कंप्लीट डिवाइड हो जाएंगे मतलब ये फाइव से डिवाइड हो होकर हमें रिमाइंडर दे देंगे जीरो जो भी नंबर फाइव से कंप्लीट डिवाइड होके रिमाइंडर दे देगा ज़ीरो मतलब व फाइव का मल्टीपल है फाइव की टेबल में आता है उसी तरीके से सवाल हो सकता था थ्री का मल्टीपल आइडेंटिफिकेशन हो जाता है तो ऐसे ही किसी भी नंबर का मल्टीपल हम चेक कर सकते हैं तो फाइव का मल्टीपल चेक करने के लिए पहले तो हम एक प्रोमट दे देंगे प्रॉम्स के अंदर हम लिख सकते हैं एंटर अ नंबर इस तरीके से हमने प्रोमट क्रिएट कर दिया सेव कर लिया रिफ्रेश कर देते हैं तो यह हमें प्रॉम्न लिखा हुआ आ रहा है एंटर अ नंबर या हम कोई भी नंबर एंटर कर सकते हैं लेट्स सपोज हमने एंटर किया 25 अभी एज सच हमने उसे सेव नहीं कराया तो उसको सेव करा लेते हैं एक वेरिएबल के अंदर वी विल कॉल इट नंबर तो ये राइट साइड से जो वैल्यू आ रही है ये हमारी लेफ्ट साइड में जाके स्टोर हो रही है यूजिंग असाइनमेंट ऑपरेटर अब हम चेक कर सकते हैं कि अगर हमारा जो नंबर है इफ नंबर मॉड्यूल फ इज ट्रिपल इक्वल टू 0 यहां हम क्या चेक कर रहे हैं इफ कंडीशन को हमने इसके साथ अप्लाई कर दिया कि अगर हमारा नंबर पांच से डिवाइड होके रिमाइंडर में रो दे रहा है मतलब वो पांच का मल्टीपल है उस केस में हमें प्रिंट करवाना है कसोल डलॉग नंबर इज मल्टीपल ऑफ फ यहां यहां नंबर की जगह हम एक्चुअल नंबर की वैल्यू प्रिंट करवा सकते हैं नंबर इज मल्टीपल ऑफ़ फाइव और एल्स के केस में हम प्रिंट करवा देंगे नंबर इज नॉट अ मल्टीपल ऑफ़ फाइव सेव कर लिया रिफ्रेश किया इस बार नंबर में मैंने टाइप किया फाइव तो यहां प्रिंट होके आ रहा है फाइव इज अ मल्टीपल ऑफ़ फाइव यहां इज अ कर देते हैं और एक स्पेस जो है यहां से कम कर देते हैं क्योंकि ऑटोमेटिक जब कॉमा आ जाता है तो ऑटोमेटिक एक स्पेस आ जाती है रिफ्रेश किया एंटर नंबर फाइव एंटर किया फाइव इज अ मल्टीपल ऑफ़ फाइव रिफ्रेश किया 25 इज अ मल्टीपल ऑफ़ फ रिफ्रेश किया थ्री थ इज नॉट अ मल्टीपल ऑफ़ फाइव रिफ्रेश किया 100 ओके 100 इज अ मल्टीपल ऑफ़ फव रिफ्रेश किया मान लो मैंने कोई रैंडम नंबर दे दिया 6 75 45 ओके 675 45 इज अ मल्टीपल ऑफ़ फ जैसे हमने मल्टीपल ऑफ़ फाइव चेक किया मल्टीपल ऑफ़ थ भी चेक कर सकते हैं बस यहां थ्री लिखना पड़ेगा हमें और जो हमारी प्रिंट स्टेटमेंट है उसके अंदर भी थ्री लिखना पड़ेगा सेव किया रिफ्रेश किया इस बार यह थ्री के लिए चेक करेगा हम लिखेंगे नाइन तो लिख र है नाइन इज़ अ मल्टीपल ऑफ़ थ रिफ्रेश किया वी विल राइट 15 15 इज अ मल्टीपल ऑफ़ 3 17 17 इज़ नॉट अ मल्टीपल ऑफ़ 3 क्योंकि 17 3 की टेबल में आता ही नहीं पर कंप्यूटर इतना तेज है हमारा कोड इतना तेज है कि हम कोई रैंडम नंबर लिखेंगे जिसके बारे में शायद हमें ही नहीं पता फॉर एग्जांपल मैंने लिखा 18 3 27 हो सकता है हम अभी देखते ही कैलकुलेट ना कर पाए थ्री का मल्टीपल है या नहीं है ओके करके पर हमारा कोड हमारे लिए कर लेगा 18327 इज़ अ मल्टीपल ऑफ़ 3 तो उसने क्या किया ऑटोमेटिक हमारे लिए चेक कर लिया हमें वो कैलकुलेशन नहीं करनी पड़ी तो इस तरीके से हमारे प्रोग्राम बड़ी वैल्यूज के लिए हमारे लिए चीजें बहुत ज्यादा सिंपलीफाई कर लेते हैं और इस तरीके से हम अपने इफ एल्स स्टेटमेंट्स एंड अपने ये जो ऑपरेटर्स हैं इन्हें यूज़ कर रहे होते हैं अब नेक्स्ट हम प्रैक्टिस करने वाले हैं अपना सेकंड क्वेश्चन सेकंड क्वेश्चन कह रहा है राइट अ कोड व्हिच कैन गिव ग्रेड्स टू स्टूडेंट्स यानी हमें स्टूडेंट के मार्क्स दिए होंगे या स्कोर्स इसको हम कह रहे हैं हमें स्कोर दिया होगा कि स्टूडेंट का स्कोर 75 है क्या या स्टूडेंट का स्कोर 89 है क्या या जो भी स्कोर है जो भी नंबर है उसके बेसिस पे हमें उस स्टूडेंट को एक ग्रेड देना है ये ग्रेड के लिए हमारे पास कंडीशन दी हुई है कि अगर 80 से 100 में आता है a दे दो 70 से 89 में आता है b दे दो 60 से 69 में आता है सी दे दो 50 से 59 में आता है डी दे दो और रो से 49 में तो ग्रेड हमारा एफ जाएगा तो इन सारी कंडीशंस को हमें चेक करना है यूजिंग आवर इफ फिर हम एल्स इफ कर सकते हैं और फिर हमारा इफ वाला ब्लॉक क्योंकि हमारे पास मल्टीपल कंडीशंस है तो यहां पे आपको पॉज करना है एक बार लेक्चर को और खुद से इस सवाल को सॉल्व करने की कोशिश करनी है और फिर फाइनल आंसर के साथ हम टाली कर सकते हैं अब फाइनली बढ़ते हैं सवाल को सॉल्व करने की तरफ हमें पता है हमारे पास एक वेरिएबल होगा कोई भी स्कोर नाम का वेरिएबल होगा जिसके अंदर कोई भी स्कोर होगा और इस स्कोर के बेसिस पे हम अपनी इफल्स कंडीशन लिखेंगे तो फर्स्ट कंडीशन से स्टार्ट कर सकते हैं फर्स्ट कंडीशन कहती है कि 80 से 100 के बीच में होना चाहिए स्कोर तो यहां चेक कर सकते हैं अगर स्कोर की वैल्यू य हमें एक कंडीशन चेक नहीं करनी दो चेक करनी है अगर स्कोर की वैल्यू ग्रेटर दन इक्वल 80 है एंड एंड स्कोर की वैल्यू लेस दन इक्वल ट 100 है तो उस केस में हमारी फर्स्ट कंडीशन आएगी इस चीज को ध्यान से देखना है मैंने उसी सेम कंडीशन को दो पार्ट्स में डिवाइड किया है 80 टू 100 ये क्या है ये एक रेंज है रेंज को डायरेक्टली जावास्क्रिप्ट के अंदर हम एज सज चेक नहीं कर सकते इफ के अंदर या अभी तक जितनी हमने चीजें सीखे उसके अंदर तो एटलीस्ट चेक कर पाना पॉसिबल नहीं है तो हम कैसे चेक करेंगे रेंज को रेंज में हम देख लेंगे 80 से बड़ा होना चाहिए और 100 से छोटा या इक्वल होना चाहिए तो हम यहां लिख देंगे अगर स्कोर की वैल्यू वैसे यहां पर आई बिलीव देयर इज अ मिस्टेक इन दिस क्वेश्चन 80 की जगह यहां पे हमारे पास 90 होना चाहिए वो थोड़ा ज्यादा सेंस बनाएगा नहीं तो ओवरलैप कर जाएगी ना कंडीशन 80 से बड़ा तो 70 और 89 के बीच में भी आता है तो दिस शुड बी इक्वल टू 90 ये चीज आप करेक्ट कर लेना ओके 90 के बीच में होना चाहिए तो उस केस में हम क्या करेंगे उस केस में यहां पे हम 90 की कंडीशन डाल देते हैं लेट्स मेक इट 90 तो पहले हम चेक करें क्या हमारे स्कोर की वैल्यू ग्रेटर दन इक्वल टू 90 है स्कोर की वैल्यू 90 भी हो सकती है 91 भी हो सकती है 92 भी हो सकती है पर हमें साथ के साथ ये भी चेक करना है कि ठीक है 90 से तो बड़ी है पर स्कोर 120 तो नहीं हो गया क्योंकि स्कोर की कोई मैक्सिमम वैल्यू भी तो है तो वो वैल्यू चेक करने के लिए ये कंडीशन तो ट्रू होई होनी होनी चाहिए साथ के साथ ये कंडीशन भी ट्रू होनी चाहिए कि स्कोर की वैल्यू लेस दन इक्वल टू 100 है ये भी ट्रू हो दोनों ट्रू हो तो उसका मतलब रेंज के अंदर हम आ रहे हैं रेंज के अंदर हम आ रहे हैं तो उस केस में हमारे ग्रेड वेरिएबल की वैल्यू क्या हो जाएगी ग्रेड वेरिएबल की वैल्यू हो जाएगी a के इक्वल तो इस तरीके से हमारी इफ स्टेटमेंट आ जाएगी देन वी कैन राइट एल्स इफ एल्स इफ के अंदर हम लिख सकते हैं स्कोर इज ग्रेटर दन इक्व 70 एंड एंड स्कोर इज लेसन इक्वल ट 89 तो इस तरीके से हम अपनी सेकंड कंडीशन लिख सकते हैं तो आई होप कि फॉर्मेट हमें समझ में आ गया होगा कि कैसे एफ एल्स को हमें यूज़ करना है अपने कोड पर अब आ जाते हैं दिस इज माय प्रैक्टिस क्वेश्चन टू कोड के लिए लेट्स मेक अ वेरिएबल कॉल्ड स्कोर स्कोर को हम कुछ भी रख सकते हैं शुरुआत में लेट्स कीप इट 75 और एक वेरिएबल ले लेते हैं लेट ग्रेड तो पहली कंडीशन चेक कर लेते हैं कि अगर हमारे स्कोर की वैल्यू ग्रे द = 90 है एंड एंड स्कोर की वैल्यू ले दन इक्व 100 है तो उस केस में हमारे ग्रेड की वैल्यू को हम सेट कर देंगे = a एल्स इफ सेकंड कंडीशन पे आ जाते हैं अगर स्कोर की वैल्यू ग्रेटर दन इक्वल टू 70 एंड एंड स्कोर की वैल्यू लेन इक्वल ट 89 है तो उस केस में हमारा ग्रेड हो जाएगा बी के इक्वल एल्स इफ स्कोर की वैल्यू अगर ग्रेटर दन इक्वल टू हम छोटी वैल्यू को पहले लिख रहे हैं यहां पे ग्रेटर दन इक्वल टू की पहले कंडीशन चेक करें फिर लेस दन इक्वल टू की आप चाहो तो अपोजिट भी कर सकते हो कौन सी कंडीशन पहले आती है कौन सी बाद में आती है वो यहां पर इस केस में मैटर नहीं करेगा स्कोर की वैल्यू ग्रेटर दन इक्वल ट 60 है एंड एंड स्कोर की वैल्यू लेसन इक्वल टू 69 है तो यहां ग्रेड इक्वल टू हो जाएगा हमारे पास सी के इक्वल एल्स इफ स्कोर की वैल्यू अगर ग्रेटर दन इक्वल टू 50 है एंड एंड स्कोर की वैल्यू लेसन इक्वल टू 59 है हमारे पास तो यहां पर ग्रेड की वैल्यू इक्वल टू हो जाएगी d एंड एल्स यहां हम चाहे तो एल्स वाला केस भी दे सकते हैं नहीं तो एक लास्ट एल्स इफ भी दे सकते हैं एल्स इफ स्कोर इज ग्रेटर दन इक्वल ट 0 एंड एंड क्योंकि नेगेटिव स्कोर नहीं है स्कोर इज लेस दन इक्वल टू 49 तो उस केस में हमारे ग्रेड की वैल्यू इक्वल टू हो जाएगी f के तो ये सारी कंडीशंस को हमने एक के बाद एक लिख दिया अच्छा इफ और एल्स इफ को हम लिख सकते हैं लास्ट में एल्स वाला जो हमारा केस होता है उसको हम कंपलीटली स्किप कर सकते हैं लास्ट में प्रिंट करवा देंगे कल डलॉग अकॉर्डिंग टू योर स्कोर्स योर ग्रेड वाज एंड यहां आप अपने ग्रेड को दिखा सकते हैं दिस वाज माय ग्रेड अब 75 का अगर स्कोर है रिफ्रेश किया तो हमारा ग्रेड क्या आ गया हमारा बी ग्रेड आ गया 75 कहां पे है कंडीशन 75 वाली कंडीशन इस फर्स्ट वाले एलसीएफ के अंदर आती है यहीं पर ग्रेड अगर होता लेट्स सपोज वी हैड 95 95 का स्कोर होता रिफ्रेश करते ग्रेड हमारा ए आ जाता यहीं पर हमारे पास अगर लेट्स सपोज 33 का स्कोर होता ग्रेड हमारा ए आ जाता अगर हमारे पास 62 का स्कोर होता सेव किया रिफ्रेश किया ग्रेड हमारा सी आ जाता तो इस तरीके इसे ऑटोमेटिक ग्रेड देने का सिस्टम है हम चाहे तो इस स्कोर की वैल्यू को प्रोमट से भी ले सकते हैं वी कैन राइट अ प्रोमट एंटर योर स्कोर और लिख देते हैं रो से 100 के बीच में होना चाहिए स्कोर सेव रिफ्रेश सबसे पहले स्कोर एंटर कर लेते हैं हमारा स्कोर लेट्स सपोज वी हैव 84 ओके योर ग्रेड वाज बी रिफ्रेश किया इफ माय स्कोर वाज लेट्स से 98 तो माय ग्रेड वाज ए तो इस तरीके से हम अपनी इफ एल्स कंडीशंस को यूज कर सकते हैं टू मेक फुली फंक्शनल प्रोग्राम्स ये जो पूरा का पूरा कोड हमने लिखा है इस पूरे कोड को हम एक प्रोग्राम कह सकते हैं कि हमने जावास्क्रिप्ट का अपना एक प्रोग्राम लिख दिया है काफी सारे कोड है कॉमिनेशन है थोड़ा सा लॉजिक कंबाइन किया है सो दिस वाज ऑल अबाउट ऑपरेटर्स एंड कंडीशनल स्टेटमेंट्स आई होप आज का जो हमारा लेक्चर था उसके अंदर हमने काफी सारी नई चीजें सीखी होंगी जिनको अब जाके हम इंप्लीमेंट कर रहे होंगे और ज्यादा प्रैक्टिस कर रहे होंगे हाय एवरीवन और अब हम शुरुआत करने वाले हैं जावास्क्रिप्ट की अपनी सीरीज के अंदर चैप्टर थ्री के साथ चैप्टर थ्री के अंदर हम पढ़ेंगे लूप्स एंड स्ट्रिंग्स के बारे में अब हमारी जो जावास्क्रिप्ट की सीरीज है वो इसी चैनल के ऊपर इस प्लेलिस्ट के अंदर अवेलेबल है जहां पर जाकर आप डिफरेंट टॉपिक्स के बारे में भी पढ़ सकते हैं जावास्क्रिप्ट से रिलेटेड तो शुरुआत करते हैं अपने चैप्टर थ्री के साथ चैप्टर थ्री के अंदर अब सबसे पहले हम बात करेंगे लूप्स के बारे में जावास्क्रिप्ट के अंदर या इन जनरल प्रोग्रामिंग के अंदर लूप्स काफी इंपॉर्टेंट कांसेप्ट होता है लूप्स का काम होता है टू एग्जीक्यूट अ पीस ऑफ कोड अगेन एंड अगेन अगर हमें कुछ ऐसा काम है जिसको रिपीट कर कर के करवाना है जैसे अगर हम spotify.com हैं youtube-mp3.org फाइल को हमने खोला हुआ है अपने ब्राउजर के अंदर तो यहां पर अभी कंप्लीट जो चीजें हैं वो कंप्लीट एम्टी है अब लेट्स सपोज हमारे पास कोई टास्क है कि हमें अपना कॉलेज प्रिंट करवाना है पांच बार तो सबसे पहले हमारे दिमाग में आएगा कि हम कोई भी चीज स्क्रीन के ऊपर कैसे प्रिंट करवाते हैं हम लिखते हैं जावास्क्रिप्ट के अंदर कसोल लॉग और उसके अंदर हम प्रिंट करवाएंगे अपना कॉलेज इसको सेव कर लेते हैं यहां आए रिफ्रेश किया तो हमारे पास अपना कॉलेज प्रिंट होकर आ गया इनफैक्ट इस स्क्रीन में यहां तीन डॉट्स पर जाएं तो डॉक साइड को हम चेंज भी कर सकते हैं अभी राइट साइड में दिख रहा है हमारा कंसोल विंडो इसे हम लेफ्ट की तरफ शिफ्ट कर लेते हैं तो अपना कॉलेज हमारे पास यहां पर प्रिंट होकर आ गया पर हमें इसे पांच बार प्रिंट करवाना है तो सिंपल तरीका होगा कि हम इसी सेम लाइन को पांच बार यहां पे कॉपी करते हैं इसको सेव कर लेते हैं रिफ्रेश करते हैं क्या हुआ हमारे पास पांच बार सेम चीज प्रिंट होकर आ गई अब हमें टास्क दिया जाता है इसी सेम चीज को हमें 100 बार प्रिंट करना है या टास्क दिया जाता है 1000 बार प्रिंट करना है या 1 लाख बार प्रिंट करना है तो मैनुअली हमारे दिमाग में आएगा कि मैनुअली इसको कॉपी पेस्ट करने में तो हमें बहुत सारा टाइम लग जाएगा बहुत सारी मैनुअल मेहनत लग जाएगी और इसी मेहनत से हमें बचाते हैं हमारे लूप लूप्स लूप्स का काम होता है कोई काम ऐसा जिसको रिपीट करना है हमें मल्टीपल टाइम्स या अगर हमें नंबर ऑफ टाइम्स उसे रिपीट करना है तो उसके लिए हम लूप्स को यूज़ करते हैं अब लूप्स के अंदर डिफरेंट डिफरेंट तरीके के हमारे पास लूप्स होते हैं एक टाइप जिसको हम काफी ज्यादा अपने कोड के अंदर यूज़ करते हैं हमारा फॉर लूप होता है फॉर के अलावा हमारे पास वाइल लूप होता है हमारे पास डू वाइल लूप होता है मतलब सेम काम को रिपीट करवाने के अलग-अलग तरीके हैं बस लिखने के उनमें से अब सबसे पहले हम सीखने वाले हैं फॉर लूप के बारे में अब लूप्स को लिखने के यानी लूप्स के सिंटेक्स को लिखने के बहुत सारे तरीके होते हैं जिनमें से सबसे पहला इनफैक्ट सबसे ज्यादा फ्रीक्वेंसी होता है पहली बार में जब इसे देखते हैं एज़ अ बिगनर तो हमें काफ़ी डरावना सा सिंटेक्स लग सकता है पर मैं आपको एश्योरेंस दे रही हूं कि इस चैप्टर के बाद आगे कभी भी अगर हम लूप्स को देखेंगे तो यह हमारे दोस्त की तरह है हम इसको इतनी बार लिख लेंगे सेम चीजों को कि ये हमें एक तरीके से याद हो जाएंगे तो लूप्स आर आवर फ्रेंड्स इन प्रोग्रामिंग अब फॉर लूप को लिखने का तरीका होता है कि हम अपने फॉर कीवर्ड को कुछ इस तरीके से सबसे पहले लिखते हैं उसके बाद हम लगाते हैं अपने पैरेंस और पैरेंस के अंदर हम अपने लूप की तीन स्टेटमेंट्स को लिखते हैं इनमें से सबसे पहली स्टेटमेंट यानी लेट आ इइ 1 यह क्या हो गई ये एक कंप्लीट स्टेटमेंट हो गई हम चाहते तो अपने कोड के अंदर सिंपली लेट आ वेरिएबल i इ ट 1 इस तरीके से एक अलग स्टेटमेंट भी लिख सकते थे पर यहां पर हमने क्या किया तीन स्टेटमेंट्स को कंबाइन किया ये हमारी फर्स्ट स्टेटमेंट है इसका मतलब है इसे हम अपनी इनिश इजेशन स्टेटमेंट भी कहते हैं यानी यह क्या कर रही है यह हमारे पास एक वेरिएबल है आ जिसको इनिश कर रही है उसकी शुरुआत कर रही है और अभी की वैल्यू की शुरुआत हो रही है वन के साथ उसके बाद होती है हमारी सेकंड स्टेटमेंट सेकंड स्टेटमेंट क्या होती है ये हमारी स्टॉपिंग कंडीशन को बताती है स्टॉपिंग कंडीशन यानी ये हमारा जो लूप है वो कब तक चलेगा और तीसरी होती है हमारी स्टेटमेंट जिसको हम कहते हैं अपडेशन कि हमारा जो वेरिएबल है i ये किस तरीके से अपडेट होगा तो यहां पर i की वैल्यू की शुरुआत कर दी हमने i = 1 के साथ और हम कह रहे हैं स्टॉपिंग स्टेटमेंट क्या है स्टॉपिंग कंडीशन क्या है कि हमारा लूप तब तक चलता रहेगा जब तक i की वैल्यू लेस देन या या इक्वल टू 5 रहती है जब तक ये वैल्यू रहती है ये वैल्यू हमें ट्रू दे रहा है जब तक तब तक हमारा लूप चलता रहेगा मतलब i = 1 है तो व हमारा लेन इक्वल 5 होता है ट्रू दे रहा है मतलब लूप चलेगा उसके बाद अपडेशन कंडीशन होगी i + प् होगा i+ प् हुआ मतलब i की वैल्यू वन से बढ़ के टू हो गई उसके बाद दोबारा चेक किया जाएगा कि क्या ू की वैल्यू लेसन इक्वल ट 5 है हां ये भी हमें ट्रू देगा तो भी हमारा लूप चलता रहेगा तो इस तरीके से एक बार हम इनिश इज करते हैं बार-बार हम अपडेट करते हैं और बार-बार हम अपनी शॉपिंग कंडीशन को चेक करते हैं पर इनिश इजेशन हमेशा एक बार किया जाता है अब एक बार इसको और थोड़ा सा डिटेल में पढ़ने से पहले एक बार इस कोड को हम रन करके देखते हैं यहां तो हमने पांच बार अपना कॉलेज प्रिंट करवाकर अपना लूप रन किया इसे कॉमेंट आउट कर देते हैं अब हम क्या करेंगे फॉर लूप लिखेंगे हम इस तरीके से अपने फॉर लूप को लिखते हैं फॉर फिर हमने क्या किया एक वेरिएबल बनाया या इस वेरिएबल को i की जगह एक बार काउंट नाम ले लेते हैं शुरुआत में हमारे काउंट की वैल्यू है वन लेट काउंट इज इक्वल ट 1 उसके बाद हम लूप तब तक चलाएंगे जब तक हमारे काउंट की वैल्यू लेस दन इक्वल ट 5 नहीं रहती और हर बार हम अपने काउंट को कर देंगे प्लस प्लस या हम काउंट इ इक्वल टू काउंट प् 1 भी इस तरीके से भी अपना कोड लिखा जा सकता है ऐसे भी लिख सकते थे पर जनरली लूप्स के अंदर हम प्लस प्लस या माइनस माइनस यूज करते हैं तो ये हो गया काउंट प्लस प्लस एंड फिर हम क्या करेंगे हर बार ये जो कर्ली ब्रेसस होते हैं ये हमारा ब्लॉक ऑफ कोड हो गया और ये फॉर लूप का ब्लॉक ऑफ कोड है इस ब्लॉक ऑफ कोड के अंदर हम अपना काम करवाते हैं जिसको हमें रिपीट करवाना है हमें किस काम को रिपीट करवाना है हमें कसोल डलॉग अपना कॉलेज जो हम प्रिंट करवा रहे हैं उस काम को रिपीट करवाना है इसको सेव कर लेते हैं अभी हमारे कोड के अंदर सिर्फ ये वाला पार्ट है जो एग्जीक्यूट होगा एंड जैसे ही एग्जीक्यूट होगा रिफ्रेश करते हैं अब क्या आया अब हमारे पास आया अपना कॉलेज ये यहां पे तो एक बार दिखाई दे रहा है पर इसके सामने एक काउंट है काउंट क्या है फाइव कि हमने अपना कॉलेज पांच बार प्रिंट करने की कोशिश की है कौन सी लाइन से हमारी लाइन नंबर एट से script.js के अंदर लाइन नंबर एट है हमारी ये वाली लाइन यानी ये लाइन पांच बार एग्जीक्यूट हुई है और इस लाइन के पांच बार एग्जीक्यूट होने की वजह से अपना कॉलेज पांच बार स्क्रीन के ऊपर प्रिंट हुआ है अब बात करते हैं कि हमारा जो फॉर लूप होता है वो एटली किस फॉर्म में किस फलो में एग्जीक्यूट होता है बहुत सिंपल है इसको बहुत ही खुले दिमाग से हमें समझने की कोशिश करनी है हमें पता है हमारे पास तीन स्टेटमेंट्स होती हैं इनिला स्टॉपिंग कंडीशन और अपडेशन अब हमारा लूप कैसे काम करता है जैसे ही फॉर लूप की शुरुआत होती है फॉर लूप की शुरुआत होती है हमेशा इनिला के साथ इजेशन कंडीशन एक बार रन करती है यानी शुरुआत में ही हमने i इव कर दिया और यहां पर हम क्या करेंगे ये एक छोटा सा बॉक्स ले लेते हैं इसके अंदर हम प्रिंट करवाने वाले हैं अपने आउटपुट को तो i = 1 के साथ हमने स्टार्ट किया जैसे ही i = 1 हुआ फिर हम क्या करते हैं यहां पे आ जाते हैं और अपनी कंडीशन को चेक करते हैं क्या 1 लेन इक्वल टू 5 है ऑब्स लेस दन इक्वल टू 5 है तो ये हमें ट्रू दे देगा ट्रू दे देगा तो फिर हम अपने कोड के अंदर आ जाएंगे ब्लॉक के अंदर आ जाएंगे फिर हमारे ब्लॉक के अंदर जो भी काम लिखा होगा वो काम किसी वेरिएबल के साथ कोई कैलकुलेशन करना भी हो सकता है कुछ भी काम हो सकता है यहां पे हमने प्रिंट करने का काम दिया है तो हम क्या कर देंगे यहां पे चीजों को प्रिंट कर देंगे प्रिंट किया तो हम अपना कॉलेज एक बार प्रिंट कर देंगे ये हमने प्रिंट कर दिया जैसे ही पूरा का पूरा काम खत्म हो गया तो ब्लॉक ऑफ कोड से वापस हम अपडेशन की तरफ जाते हैं अब हम अपडेशन पर गए तो i+ प् हो जाएगा i+ प् हुआ यानी इस बार i की वैल्यू हो गई टू जैसे ही अपडेशन हुआ उसके बाद दोबारा से स्टॉपिंग कंडीशन चेक की जाती है अब कंडीशन चेक करेंगे क्या 2 < = 5 है ये हमें ट्रू दे देगा इसने ट्रू दिया यानी स्टॉपिंग कंडीशन चेक हो गई तो दोबारा से हम लूप के अंदर आके काम करेंगे लूप के अंदर काम क्या है अपना कॉलेज प्रिंट करना हमने दोबारा से अपना कॉलेज प्रिंट कर दिया या हमारे कंसोल के अंदर क्या होता है जब हम सेम चीज प्रिंट करने की कोशिश करते हैं तो हमारे कंसोल के अंदर उसके आगे एक नंबर अपेंड हो जाता है सेम लाइन जब सेम चीज करने की कोशिश करती है तो यहां नंबर टू हमारे पास आ जाता है इस तरीके से तो मतलब दो बार अपना कॉलेस प्रिंट हो गया उसके बाद जैसे ही प्रिंट हो गया वापस से हम इधर आ जाएंगे i को अपडेट करेंगे i को अपडेट करके i की वैल्यू को कर देंगे तीन i जैसे ही तीन हो गया दोबारा से स्टॉपिंग कंडीशन को चेक करेंगे ये वाली एरो हम हटा सकते हैं क्योंकि इनिश इजेशन वाला काम हो चुका है अब दोबारा चेक करेंगे क्या 3 < = 5 है यहां पे हम कर देंगे ट्रू जैसे ही ट्रू हो गया ये काउंट अपडेट हो के तीन हो जाएगा यानी तीन बार अपना कॉलेज प्रिंट हो गया उसके बाद दोबारा से जैसे ये प्रिंट हो गया वापस से i+ प्स करेंगे i की वैल्यू फोर हो जाएगी एंड फिर स्टॉपिंग कंडीशन चेक करेंगे i की वैल्यू फोर हो गई स्टॉपिंग कंडीशन कहती है क्या 4 ले = 5 है बिल्कुल है तो ये ट्रू दे देगा ट्रू दे देगा तो हम एक और बार अपना कॉलेज को प्रिंट करवा देंगे उसके बाद दोबारा से i को प्लस प्लस करेंगे दोबारा i+ प्स होके पांच हो जाएगा i+ प्स होके जैसे ही पांच हुआ वापस से हम चेक करेंगे अपनी स्टॉपिंग कंडीशन को स्टॉपिंग कंडीशन कहती है क्या 5 लेस दन इक्वल ट 5 है ऑब् वियस है लेस दन इक्वल टू में इक्वल टू तो आता ही है तो ये हमें ट्रू दे देगा जैसे ही इसने ट्रू दे दिया वापस से आके हम अपने काम को रिपीट कर देंगे और हम फिफ्थ टाइम अपना कॉलेज को प्रिंट कर देंगे अपनी स्क्रीन के ऊपर उसके बाद जैसे ही काम हो जाएगा वापस से i को आके प्लस प्लस करेंगे i को प्लस प्लस किया तो इस बार आ हो गया सिक्स के बराबर एंड फिर यहां पर हम चेक करेंगे फाइनली क्या 6 < इक्वल ू 5 होता है ये कंडीशन हमारी रॉन्ग हो जाएगी यहां पे फाइनली आके हमारी कंडीशन हमें फॉल्स दे देगी और जैसे ही कंडीशन ने फॉल्स दे दिया वैसे ही अब हमें काम नहीं करवाना अब हम इस लूप से बाहर आ जाएंगे और अब लूप के बाद जो काम लिखा होगा उसको एग्जीक्यूट करेंगे तो इसीलिए अगर मैं लूप के बाद लिख दूं console.log लूप हैज एंडेड एंड सेव करें रिफ्रेश करें तो पांच बार अपना कॉलेज प्रिंट हुआ और लास्ट में प्रिंट होके आ गया लूप हैज एंडेड एंड इसी तरीके से अगर ये काउंट पांच ना होता ये काउंट तीन होता सेव कर लिया रिफ्रेश किया तो हमारे पास तीन बार अपना कॉलेज प्रिंट होता और इसी तरीके से अगर ये काउंट 100 होता तो हमारे पास 100 टाइम्स अपना कॉलेज प्रिंट होता तो हमें 100 बार अपना मैनुअल जो लॉजिक है उसको कॉपी पेस्ट करने की जरूरत नहीं पड़ी हमें सिंपली बस अपनी एंडिंग कंडीशन को चेंज करना है लूप शुरू कर दो कंडीशंस के साथ और बस कहां पे रुकना है वो बता दो मान लो मुझे 1000 पर रुकना था सेव किया रिफ्रेश किया तो अब हम कहां रुके हम 1000 के ऊपर रुके मुझे 10000 पे रुकना था तो मुझे 10000 बाद चीजें कॉपी पेस्ट नहीं करनी पड़ी मैंने रिफ्रेश किया और इस बार अपना कॉलेज आपने नोटिस किया कितने टाइम के बाद प्रिंट हुआ 1000 बार प्रिंट हुआ यानी 10000 टाइम्स प्रिंट हुआ 10000 बार प्रिंट हुआ इन फैक्ट आई कैन इवन मेक इट 1 लाख सेव किया रिफ्रेश किया धीरे-धीरे काउंट अपडेट हो रहा है मेरा और ये धीरे-धीरे जा रहा है जा रहा है जा रहा है चीजें प्रिंट हो रही है एंड इंटरनली मेमोरी के अंदर अपना कॉलेज जो है वो 1 लाख टाइम्स प्रिंट होगा तो अभी अराउंड हमारा 800 90000 एंड फाइनली 1 लाख बार प्रिंट हुआ और लास्ट में प्रिंट होके आ गया लूप हैज एंडेड तो वो काम वो जो हमारी मैनुअल मेहनत थी जिसको हमें बार-बार लिखना पड़ता कोड ने क्या किया ऑटोमेटिक कर दिया उस सारी मेहनत को तो ये मैजिक होता है लूप्स का प्रोग्रामिंग के अंदर कोडिंग के अंदर अब लूप्स को यूज करके बहुत सारे डिफरेंट डिफरेंट प्रोग्राम्स हैं जिनको क्रिएट किया जा सकता है हम वैसे तो लूप्स को बहुत ज्यादा फ्रीक्वेंसी बारे में सीख लेते हैं प्रैक्टिकली जब हम अपने प्रोजेक्ट पर काम करना स्टार्ट करेंगे पर उससे पहले मैं एक दो इंटरेस्टिंग एग्जांपल दिखाती हूं आपको लूप्स के इसे वापस से चाहे तो हम फ कर सकते हैं एंड अपने कोड से यह वाली जो स्टेटमेंट है इन्ह हटा लेते यह कौन सा लूप था हमारा प्रिंट ू फ का यह हमारे पास लूप था इसे कर देते हैं अभी के लिए कॉमन डाउट हम नेक्स्ट एक लूप बनाएंगे टू कैलकुलेट सम ऑफ फर्स्ट ए नंबर्स या इसे कह सकते हैं सम ऑफ 1 टू n अगर मुझे वन से लेके n तक n कोई भी वैल्यू हो सकती है शुरुआत में वन से लेके फाइव तक का अगर मुझे सम कैलकुलेट करना है सारे के सारे नंबर्स का 1 + 2 + 3 + 4 + 5 तो उसके लिए हम लूप लिख सकते हैं वो लूप कैसे लिखा जाएगा उसके लिए हम लिखेंगे फॉर और शुरू में हम एक वेरिएबल बना लेते हैं लेट सम इज इक्वल टू 0 ये क्या है मेरा सम वेरिएबल है जो शुरुआत में जरो के इक्वल है हम एक लूप चला सकते हैं जो बार-बार जो हमारी नंबर्स हैं उसको वन से स्टार्ट करेगा और कहां तक लेके जाएगा पांच तक लेके जाएगा और हर बार हम i को कर देंगे प्लस प्लस तो शुरू में i1 होगा फिर टू बनेगा फिर थ्री बनेगा फिर फोर बनेगा फिर फाइव बनेगा और फाइव तक जाएगा जैसे ही सिक्स हो जाएगा इस लूप से हम बाहर आ जाएंगे और हर बार हमारा जो नंबर है i हम उसको क्या करेंगे सम के अंदर ऐड करते चले जाएंगे तो सम के अंदर हर बार हम ऐड कर देंगे अपने i को अब ये फर्स्ट टाइम हो सकता है थोड़ा सा कॉम्प्लेक्शन लगे प्रोग्राम देखने में पर कोई बात नहीं हर चीज को हम धीरे-धीरे समझते हुए चल रहे हैं एंड लास्ट में हम क्या करेंगे लास्ट में हम कंसोल डॉट लॉग करके प्रिंट करवा देंगे सम इज इक्वल टू एंड यहां पे अपने सम की वैल्यू इसको कर लेते हैं सेव एंड यहां हमने किया रिफ्रेश तो हमारा सम क्या होता है 1 + 2 + 3 + 4 + 5 का सम होता है हमारे पास 15 के इक्वल तो हमारा सम 15 प्रिंट होकर आ गया अब ये कैलकुलेट कैसे हुआ कैलकुलेट ये ऐसे हुआ शुरुआत में सम की वैल्यू क्या थी यहां पे लिखते जाते हैं सम की वैल्यू शुरुआत में सम की वैल्यू थी जरो तो यहां पर और जैसे ही हम लूप के अंदर एंटर हुए i की वैल्यू है वन तो यहां हो जाएगा सम की वैल्यू क्या हो जाएगी 0 + 1 यानी 0 + 1 तो सम की वैल्यू फाइनली आ जाएगी वन के इक्वल जैसे ही सम वन हो गया दोबारा यहां पे आ जाएंगे हम अपडेट कर देंगे अपडेट कर के i की वैल्यू टू हो जाएगी i की वैल्यू टू हो गई ये कंडीशन ट्रू दे देगी तो दोबारा से सम की वैल्यू को अब चेक करेंगे सम की वैल्यू ऑलरेडी है वन उसके अंदर हम प्लस कर देंगे i को यानी टू को प्लस कर दिया तो सम की वैल्यू अब थ्री बन गई दोबारा आके लूप के ऊपर आके i को प्लस प्लस कर देंगे i हो गया हमारा थ्री के बराबर i 3 हो गया दोबारा लूप के अंदर आएंगे सम के अंदर हम थ्री को ऐड कर देंगे तो 3 + 3 हमारे पास हो गया सिक्स के इक्वल जैसे ही 3 + 3 हो गया सम सिक्स हो गया उसके बाद i को दोबारा प्लस प्लस करके अपडेट कर देंगे i + प्स हो के इस बार क्या हो गया पहले i3 था अब i4 हो गया हो गया और कंडीशन अभी भी ट्रू कह रही है तो सम के अंदर हम i को ऐड कर देंगे यानी फोर को ऐड कर देंगे तो इस बार सम हो गया 6 + 4 यानी 10 के इक्वल नेक्स्ट टाइम दोबारा i जब प्लस प्लस होगा तो i की वैल्यू प्लस होके क्या हो जाएगी i की वैल्यू प्लस होके हमारे लिए हो जाएगी फाइव के इक्वल ये कंडीशन क्या देगी ये कंडीशन ट्रू देगी 5 इज ले = 5 और फिर i को हम यहां पे ऐड कर देंगे तो सम फाइनली हो जाएगा 15 के इक्वल पर फिर भी हमारा i + प्स होगा और i + प् होके क्या देगा i + प् होके इस बार i की वैल्यू सि हो जाएगी 6 < = 5 नहीं होता तो हम इस लू से बाहर निकल जाएंगे सम की वैल्यू क्या रही फाइनली सम की वैल्यू 15 रही और वही 15 हमारे लिए कंसोल विंडो पर आकर प्रिंट हो गया तो इस तरीके से हम अपने लूप्स को लॉजिकल काम करने के लिए यूज़ कर सकते हैं लॉजिकल काम बहुत सारे डिफरेंट डिफरेंट काम हो सकते हैं लॉजिकल काम ये भी हो सकता है सम ऑफ़ 1 2 5 हम कैलकुलेट करें या हम यहां पे सम ऑफ़ 1 टू n भी कैलकुलेट कर सकते हैं ये n कोई भी नंबर हो सकता है बस हमें क्या करना पड़ेगा अपनी स्टॉपिंग कंडीशन को चेंज करना पड़ेगा यहां पे हम लिख देंगे लेट्स सपोज हम कोई वेरिएबल बना ले n n की वैल्यू अगर फाइव है तो यहां स्टॉपिंग कंडीशन में हम n को लिख सकते हैं सेव किया रिफ्रेश किया अभी भी सम 15 के बराबर है पर जैसे ही सिक्स तक लेकर जा रहे हैं इस बार हमारा लूप सिक्स तक जाएगा रिफ्रेश किया तो इस बार सम के अंदर 15 के अंदर सिक्स ऐड हो गया यानी 21 हो गया अगर n को सेवन कर देते हैं तो इस बार लूप सेवन तक जाएगा सेव किया रिफ्रेश किया तो 21 के अंदर से को ऐड किया तो 28 हो गया अगर हम चाहते हैं वन से लेके 100 तक सारे नंबर्स का सम कैलकुलेट हो तो कोई नहीं बस n की वैल्यू चेंज करनी है 100 कर दिया रिफ्रेश किया तो हमारा वन से लेकर 100 तक सारे के सारे नंबर्स का सम इज इक्व टू 55050 और वही सेम वैल्यू हमारे पास प्रिंट होकर आ गई तो जो कॉम्प्लेक्टेड लगता मैनुअली उसको प्रोग्राम ने क्या किया एक सिंपल से दो-तीन लाइनों के अंदर उसको निपटा दिया तो ये मैजिक होता है इस तरीके से हमारे लूप्स को प्रोग्रामिंग के अंदर हम यूज कर रहे होते हैं अब यहां एक और चीज हम सीखने वाले हैं लूप से रिलेटेड उसके लिए अपने पहले वाले एग्जांपल पे आ जाते हैं लेट्स कम टू आवर इनिशियल एग्जांपल जिसके अंदर हम अपना कॉलेज को पांच बार प्रिंट करवा रहे थे इस बार अपना कॉलेज की जगह हम क्या करेंगे आ को पांच बार प्रिंट करवा लेते हैं यहां लिख देते हैं है i इ इक्व टू ताकि हमें क्लियर हो हमारा लूप कैसे काम कर रहा है रिफ्रेश ओके i इज नॉट डिफाइंड इस काउंट को हम i कर लेते हैं जनरली हमारे जो लूप के वेरिएबल होते हैं उनको या तो हम i कहते हैं या हम j कहते हैं उनको हमें ज्यादा मीनिंगफुल इन जनरल बनाने की जरूरत नहीं पड़ती तो ये हमारा लूप हो गया इसके अंदर i को प्रिंट करवा रहे हैं पहले i1 था टू था थ्री था फोर था फाइव था तो इस तरीके से हमारे लूप के अंदर i की वैल्यू जो है वो चेंज हो रही है अपडेट हो रही है अब यहां पर इवन दो हमने i को यहां पे डिफाइन कर रखा है पर अगर इस लूप के बाहर मैं कोशिश करूं i की वैल्यू प्रिंट करवाने की हम यहां i की वैल्यू प्रिंट करवा रहे हैं लास्ट में लूप के बाद तो यहां हम सोच सकते हैं i यहां पे लास्ट टाइम क्या था सिक्स था तो यहां भी सिक्स आके प्रिंट होना चाहिए क्योंकि जब ये लूप खत्म हुआ तब i की वैल्यू अपडेट होते-होते छह हो गई थी पर सेव करके अगर रिफ्रेश करें तो यहां क्या आता है हमारे पास एरर आता है दैट i इज नॉट डिफाइंड इसका रीजन क्या है इसका रीजन ये है कि ये जो हमारा आ वेरिएबल हमने डिफाइन किया है ये ब्लॉक स्कोप के अंदर डिफाइन हुआ है ब्लॉक स्कोप कहने का मतलब ये सिर्फ इस फॉर लूप तक जिंदा है उसके बाद ये खत्म हो जाएगा मेमोरी से खत्म हो जाएगा अब हमारे जावास्क्रिप्ट के कोड को नहीं पता कि आ क्या है तो हमें यहां पे आ को यूज़ करना है तो हमें आ को री डिक्लेयर करना पड़ेगा दोबारा डिफाइन करना पड़ेगा पर ये एक डिफरेंस होता है लेट और वर में अगर मैं यहां वेर लिखती तो उस केस में आई सरवाइव कर जाता क्योंकि वेयर फॉर लूप तक नहीं सरवाइव करता वयर कहता है मैं ग्लोबल हूं हर जगह रहूंगा तो यहां सेव करते हैं रिफ्रेश किया वेयर के केस में लास्ट वैल्यू आई की हमारी क्योंकि सिक्स थी तो वो हमारे पास आकर प्रिंट हो गई बट वर को हमें कभी यूज नहीं करना हम हमेशा लेट को ही यूज़ करते हैं जब भी अपने हम वेरिएबल को लिख रहे होते हैं अपने लूप्स के के अंदर पर ये चीज याद रखनी है कि लूप के अंदर जो वेरिएबल इनिश होते हैं वो सिर्फ लूप तक ही रहते हैं वहीं तक जिंदा रहते हैं बाद में हम उन वेरिएबल को एक्सेस नहीं कर पाते तो ये थे हमारे फॉर लूप्स अब नेक्स्ट हम एक और कांसेप्ट के बारे में बात करेंगे व्हिच इज कॉल्ड एन इंफाइटिंग इनफिनिटी इज बेसिकली समथिंग दैट नेवर एंड्स इंफाइटिंग मैथ के अंदर इंफाइटिंग लद ये हमें कभी नहीं करना है वी शुड नेवर डू इट इन अ प्रोग्राम कभी भी हमें ऐसा लूप क्रिएट नहीं करना जो हमेशा के लिए चलता रहता है क्योंकि उसके बहुत सारे नुकसान होते हैं नुकसान ये होता है क्योंकि जब भी कोई लूप चलता है तो उसके अंदर अगर कोई भी काम हो रहा है तो इंटरनली वो मेमोरी के अंदर जगह घेर है कोई भी काम होता है नया वेरिएबल डिफाइन हो रहा है कैलकुलेशन हो रही है हर चीज मेमोरी के अंदर रिसोर्सेस ऑक्यूपाइड करती है मेमोरी के अंदर जगह घेर है और एक पॉइंट ऐसा आएगा इनफा आइट लूप अगर हमने रन कर दिया कि हमारे कंप्यूटर की सिस्टम की सारी स्पेस खत्म हो जाएगी और हमारा जो भी प्रोग्राम चल रहा होगा कोड चल रहा होगा वो बंद हो जाएगा हमारा सिस्टम भी बंद हो सकता है एज सच परमानेंट डैमेज नहीं होगा जावास्क्रिप्ट के कोड में इनफाइनों नहीं लिखना अब इंफाइटिंग हो अ लूप दैट नेवर एंड्स और एक नेवर एंडिंग लूप क्या होता है ऐसा लूप जिसकी स्टॉपिंग कंडीशन कभी फॉल्स ही नहीं देती स्टॉपिंग कंडीशन अगर किसी भी लूप की जो हमारी स्टॉपिंग कंडीशन होती है वो अगर हमेशा ट्रू दे दे तो वो लूप क्या बन जाएगा वो लूप एक नेवर एंडिंग इंफाइटिंग कंडीशन को चेंज करके कह दूं i की वैल्यू ग्रेटर दन इक्वल टू 0 होनी चाहिए ये है मेरा कोड इसको मैं रन करना चाहती हूं अब इसे एक बार ध्यान से देखना है लॉजिकली i की वैल्यू वन है अपडेशन में कह रखा है i हमेशा बढ़ेगा प्लस प्लस होगा टू होगा थ्री होगा फोर होगा फाइव होगा तो क्या मैं कह सकती हूं कि i तो हमेशा जीरो से बड़ा ही रहेगा तो यह कंडीशन तो हमेशा ही ट्रू देगी और ऐसे केस में क्या होगा और ऐसे केस में हमारे इनफाइनों गई है कंपलीटली एंड हो सकता है कम अभी बंद हो जाए क्योंकि क्योंकि सारी जो स्पेस है दैट हैज रिड्यूस्ड तो इस तरीके से आई थिंक आई विल नीड टू स्टार्ट माय ब्राउजर वंस अगेन बट बेसिकली मैं विंडो क्रॉस भी नहीं कर पा रही हूं कुछ स्टॉप भी नहीं हो रहा है न नया टैब भी नहीं खुल रहा है तो कुछ नहीं हो रहा है तो इस सिचुएशन से हमें बचना है कभी भी इंफाइटिंग लूप जिसको हमने क्रिएट करके देखा नेक्स्ट हम बात करने वाले हैं एक और स्पेशल टाइप के लूप की जिसका नाम है वाइल लूप अब जब भी हम डिफरेंट टाइप्स ऑफ लूप्स पढ़ रहे हैं फॉर एग्जांपल हमने फॉर लूप पढ़ लिया अब हम वाइल लूप पढ़ेंगे ऐसा कोई भी काम नहीं है जो फॉर लूप से हम नहीं कर सकते तो जो सारे काम हम फॉर लूप से कर सकते हैं वो सारे काम हम वाइल लूप से भी कर सकते हैं जो वाइल से कर सकते हैं वो फॉर से भी कर सकते हैं ये बस लूप्स को लिखने के डिफरेंट तरीके हैं अब वाइल लूप की जब हम बात करते हैं वाइल लूप को हम कुछ इस तरीके से लिखते हैं कि पहले हम अपना वाइल कीवर्ड लिखेंगे उसके बाद पैरेंस के अंदर हम अपनी स्टॉपिंग कंडीशन को लिखने वाले हैं ये स्टॉपिंग कंडीशन जब तक ट्रू है हमारा लूप चलता रहेगा जैसे ही ये फाल्स हो जाएगी हमारा लूप रुक जाएगा और फिर अपना ब्लॉक बना के हम सारे के सारे काम यहां पर करते हैं अब जो भी वेरिएबल के इनिशियल इज का काम होता है जनरली व सारे काम हम वाइल लूप से पहले करते हैं और अपडेशन का काम हम लूप के अंदर ही कर रहे होते हैं तो अब एक बार कोड पर आ जाते हैं हमने पहले क्या किया था हमने वन से लेके फाइव तक सारे नंबर्स को प्रिंट किया था अब ये सेम काम हम अपने वाइल लूप से करने वाले हैं वाइल लूप को लिखने के लिए हम लिखते हैं y एंड वेरिएबल को हम अपने लूप से पहले ही बना लेंगे तो i = 1 जब तक हमारी i की वैल्यू लेसन इक्वल ट 5 रहती है तब तक हमें क्या करना है तब तक हमें कसोल डलॉग करना है i को तो i = i अब यहां पर लूप के अंदर एक इंपोर्टेंट चीज है जिसको हम मिस कर रहे हैं दैट इज़ आवर अपडेशन कंडीशन अभी के लिए तो i की वैल्यू इज इक्वल ट 1 है और 1 हमेशा लेन = 5 रहेगा i अपडेट ही नहीं हो रहा तो i को अपडेट करना बहुत जरूरी है वाइल लूप के अंदर इसको सेव कर लेते हैं रिफ्रेश करते हैं सो दिस इज आवर आउटपुट जिसमें i की वैल्यू वन से लेकर फाइव तक जा रही है इस तरीके से वन से लेकर फाइव तक अगर हमें पांच बार कुछ और डिफरेंट काम करवाना हुआ लेट्स सपोज हमें पांच बार या इन दिस केस अगर हमें 10 टाइम्स अपना कॉलेज को प्रिंट करवाना है सेव किया रिफ्रेश किया तो इस बार क्या हुआ 10 टाइम्स हमारे पास अपना कॉलेज लेज प्रिंट होक आ गया तो इस तरीके से जो सारे काम हम फॉर लूप से कर सकते थे उन सारे कामों को वाइल लूप से करना भी पॉसिबल है नेक्स्ट टाइप ऑफ लूप जिसको हम पढ़ने वाले हैं दैट इज द डू वाइल लूप अब डू वाइल लूप वाइल लूप जैसे ही काम करता है बस इसमें एक छोटा सा डिफरेंस होता है छोटा सा डिफरेंस ये होता है कि वाइल लूप में क्या होगी जो हमारी कंडीशन होती है कि कब स्टॉप करना चाहिए वो शुरू में ही चेक हो जाती है द कंडीशन इज एट द स्टार्ट जबकि डू वाइल लूप में ये जो कंडीशन होती है लास्ट में चेक होती है एंड में चेक होती है इसीलिए डू वाइल लूप में हमारे पास एक गारंटी होती है कि हमारा जो डू वाइल लूप होता है वो एटलीस्ट एक बार तो रन करेगा ही करेगा जबकि वाइल लूप में ऐसी कोई कंडीशन नहीं होती फॉर एग्जांपल वाइल लूप के अंदर मैंने लिख दिया i = 20 तो क्या i कभी भी लेस दन इक्वल टू 10 होगा कभी भी नहीं होगा इसको सेव किया रिफ्रेश किया तो मेरी स्क्रीन के ऊपर कुछ भी प्रिंट नहीं होगा तो ये लूप क्या किया ये लूप एक बार भी रन नहीं किया क्योंकि पहली आपने सिचुएशन ऐसी दे दी पहली आपने कंडीशन ऐसी दे दी जिसके अंदर वो कंडीशन कभी ट्रू होगी ही नहीं बट डू वाइल लूप के अंदर फर्स्ट टाइम तो लूप हमेशा रन करेगा ही करेगा काम होगा ही होगा एंड उसके बाद हमारी कंडीशन जो है वो चेक की जाएगी जैसे इसी सेम चीज को अगर डू वाइल लूप से करें इसे कॉपी कर लेते हैं पेस्ट करते हैं एंड इसे कर देते हैं कॉमेंट आउट यहां पे लेट्स सपोज आई स्टार्ट विद i = 20 अब डू वाइल लूप को लिखने के लिए हम लिखते हैं डू एंड उसके बाद अपना काम बता द लेट्स सपोज हमारा काम है कि हमें अपना कॉलेज प्रिंट करवाना है और हम हमेशा i को प्लस प्लस करते रहेंगे अब डू वाइल लूप के अंदर इस तरीके से ब्लॉक के बाद हम अपनी वाइल की कंडीशन लिखते हैं हम चाहते हैं हमारा लूप तब तक चले जब तक i की वैल्यू लेस दन इक्वल ट 10 है और यहां लगा देते हैं सेमीकलन इसको सेव कर लेते हैं अब i की वैल्यू शुरुआत में ही 20 है और कंडीशन कह रही है i < = 10 होना चाहिए तो हमारा लूप सिर्फ एक ही बार चलेगा रिफ्रेश किया तो अपना कॉलेज सिर्फ एक ही बार हमारे पास प्रिंट होक आया अब जो हमारा वाइल लूप होता है ये चीज याद रखनी है वाइल लूप के अंदर लास्ट में कोई सेमीकलन नहीं होता जबकि हम डू वाइल के अंदर जब अपनी लास्ट की कंडीशन लिखते हैं तो इसके बाद हमें अपना सेमीकलन लगाना पड़ता है तो ये चीज इंपॉर्टेंट है जिसको आपको याद रखना है अगर हम फर्स्ट टाइम वाइल एंड डू वाइल लूप्स को लिख रहे हैं तो अब इसी तरीके से डू वाइल लूप के अंदर वन से लेकर फाइव तक नंबर्स को कैसे प्रिंट करवा सकते हैं हम अपना वेरिएबल ले लेंगे i जिसको शुरू करेंगे वन के साथ हम क्या करेंगे हर बार हमें प्रिंट करवाना है i = i को हर बार i को प्लस प्लस करते रहेंगे और लूप हमारा तब तक चलना चाहिए जब तक i इज लेन इक्व 5 सेव कर लेते हैं रिफ्रेश करते हैं तो हमारे i की वैल्यू वन से लेकर फाइव तक जा रही है तो इस तरीके से हमारा डवा लूप ऑपरेट करता है नेक्स्ट हम बात करने वाले हैं एक और स्पेशल टाइप के लूप के बारे में व्हिच इज द फॉर ऑफ लूप अब हमारे पास जो फॉर लूप होता है जो डू वाइल लूप होता है एंड जो हमारा वाइल लूप होता है ये तो होते हैं तीन जनरल लूप्स जिनको हम यूज़ करते हैं और इनमें से भी मैक्सिमम टाइम हम फॉर लूप को यूज़ करेंगे पर इसके अलावा भी हमारे पास दो स्पेशल लूप्स होते हैं एक का नाम होता है फॉर ऑफ और एक का नाम होता है फॉर इन ये लूप्स एज सच कुछ अलग नहीं कर रहे होते बस ये हमें हेल्प करते हैं टू आइट मेट आइट मेट यानी लूप लगाना ऑन सम स्पेशल डाटा टाइप्स सबसे पहले फॉर ऑफ लूप के बारे में बात करते हैं फॉर ऑफ लूप का काम होता है कि ये हमें स्ट्रिंग्स एंड अरेज के ऊपर लूप लगाने में हेल्प करता है अरेज अभी क्या है अरेज को इग्नोर कर देना है स्ट्रिंग्स को हमने ऑलरेडी देख रखा है स्ट्रिंग होता है हमारा कोई भी स्ट्रिंग फॉर एग्जांपल मैंने कुछ भी अगर नाम लिख दिया तो ये क्या हो जाएगी एक स्ट्रिंग हो जाएगी अगर इस स्ट्रिंग के ऊपर एकएक कैरेक्टर के ऊपर जा जा के जा जा के मुझे लूप लगाना है इस स्ट्रिंग की वैल्यूज पर तो उसके लिए हम फॉर ऑफ लूप को यूज करेंगे फॉर ऑफ लूप को लिखने का सिंटेक्स होता है फॉर और इसके अंदर फिर हम कोई वेरिएबल बनाते हैं लेट और हम अपने वेरिएबल का नाम कुछ भी रख सकते हैं एंड फिर यहां पे हम अपने स्ट्रिंग वेरिएबल को लेते हैं अगर एरे वेरिएबल है तो हम एरे वेरिएबल को भी ले सकते हैं पर अरेज हमने पढ़े नहीं बाद में पढ़ेंगे तो हम फॉर ऑफ लूप को बाद में भी यूज कर रहे होंगे तो हम अपने स्ट्रिंग वेरिएबल का नाम लिखते हैं और बीच में हम अपने ऑफ कीवर्ड को यूज करते हैं और फिर ये जो हमारा वेरिएबल होता है इसमें एक-एक करके एक-एक करके स्ट्रिंग के सारे के सारे कैरेक्टर्स की वैल्यू हमारे पास आ जाती है तो इस फॉर ऑफ लूप को लिखते हैं एक बार इसे कर देते हैं कॉमेंट आउट एंड लेट्स ट्राई टू राइट आवर फॉर ऑफ लूप फॉर ऑफ लूप के लिए हमें एक स्ट्रिंग बनानी पड़ेगी तो उसके लिए एक स्ट्रिंग वेरिएबल बना लेते हैं लेट एसटी इज इक्वल टू इसको कह देते हैं अपना कॉलेज इस तरीके से हमने कोई स्ट्रिंग वेरिएबल बनाया अब इसके ऊपर फॉर ऑफ लूप हम अप्लाई करते हैं लेट वैल्यू ऑफ इस तरीके से हमने एक वेरिएबल बनाया वैल्यू इसको हम i भी बोल सकते थे एक बार इसे हम आ कह देते हैं लेट i ऑफ स्ट्रिंग एसटी और इसमें हम हर बार क्या करेंगे चेक करेंगे इस i के अंदर वैल्यू क्या आती है क्योंकि इसको ना हमने इनिश इइ किया जैसे पहले वाले लूप्स में हम हमेशा अपने वेरिएबल को पहले ही कोई वैल्यू दे देते थे पर फॉर ऑफ लूप के अंदर i के अंदर वैल्यू ऑटोमेटिक आती है और अपडेशन भी इनफैक्ट ऑटोमेटिक होते हैं हमें ना यहां पे इनिश इजेशन देखना ना यहां पे हमें अपडेशन देखना ना यहां पे हमें स्टॉपिंग कंडीशन देखनी तीनों में से कुछ नहीं देखना ऑटोमेटिक फॉर ऑफ लूप हमारे लिए सब देख लेगा हमें क्या करना है हमें हर बार हम क्या करेंगे सिंपली अपने i को प्रिंट करवा देंगे या इनफैक्ट यहां लिख देते हैं i इ इक्वल टू इसको कर लेते हैं सेव एंड रिफ्रेश तो ये क्या हुआ हमारे पास i की सारी की सारी वैल्यूज प्रिंट होकर आ गई फर्स्ट आइट मेशन में i की वैल्यू a है फिर p है फिर n है फिर a है फिर c है फिर o है फिर दो बार डबल एल है फिर ई है जी है एंड इस तरीके से जो अपना कॉलेज था ये जो हमारी स्ट्रिंग थी अगर इसके ऊपर फॉर ऑफ लूप लगाया तो हर बार जो ये आई होगा आइट मेटर होगा इसे आइट मेटर भी कहते हैं जो हमें आइट मेट करने में हेल्प करता है हमारा जो आइट मेटर होगा उसके अंदर हमारे कैरेक्टर्स आ जाएंगे हर बार अगर फॉर एग्जांपल इफ आई राइट जावास्क्रिप्ट हियर सेव कर लेते हैं रिफ्रेश करते हैं तो जावास्क्रिप्ट के जो सारे के सारे कैरेक्टर्स हैं वो हमारे पास प्रिंट होके आएंगे हम फिर चाहे तो इन कक्ट के साथ कुछ भी काम कर सकते हैं कुछ भी ऑपरेशंस कर सकते हैं फॉर एग्जांपल मुझे अपनी स्ट्रिंग की लेंथ कैलकुलेट करनी हुई कि ये स्ट्रिंग कितनी लंबी है तो उसको कैलकुलेट करने का एक बेसिक तरीका होगा कि हम एक वेरिएबल बना लेते हैं लेंथ इज इक्वल टू 0 लेंथ की शुरुआत कर दी हमने जीरो के साथ या इसको लेंथ की जगह हम साइज कह लेते हैं हमारी स्ट्रिंग का साइज अभी क्या है साइज है जीरो जितनी बार ये लूप रन करेगा मतलब उतने कैरेक्टर्स है इस स्ट्रिंग के अंदर तो हम हर बार क्या करेंगे अपने साइज को इंक्रीज कर देंगे बाय वन हर बार मेरा साइज इंक्रीज हो जाएगा बाय वन और लास्ट में मैं प्रिंट करवा दूंगी स्ट्रिंग साइज इज इक्वल टू हमारा साइज इससे हमारे पास स्ट्रिंग का साइज आ जाएगा अब हमें पहले से क्या पता है कि हमारे स्ट्रिंग का साइज क्या है 1 2 3 4 5 6 7 8 9 10 हमारे पास लास्ट में यहां पे प्रिंट होकर आना चाहिए 10 जावास्क्रिप्ट के अंदर 10 कैरेक्टर्स है रिफ्रेश किया तो लास्ट में क्या प्रिंट होके आ है स्ट्रिंग साइज इज इक्वल टू 10 तो इस तरीके से कुछ भी डिफरेंट काम है जो हम अपनी कैरेक्टर्स है या दूसरी जो वैल्यूज आएंगी उनके साथ कर सकते हैं बट इस तरीके से हमारा फॉर ऑफ लूप वर्क करता है जनरली यहां पे आइट मेटर आ को हम वैल्यू ल बोल सकते हैं वैल्यू कह सकते हैं और हर बार हमारी जो वैल्यू है उसे हम लिख सकते हैं ये हमारी वैल्यू आ जाएगी व्हिच इज इक्वल टू इंडिविजुअल कैरेक्टर्स ईच टाइम अब ये जो हमारा फॉर ऑफ लूप होता है इसे हम स्ट्रिंग्स एंड अरेज के लिए यूज़ करते हैं बट ऑब्जेक्ट्स के लिए हमें इसे यूज़ नहीं करना है ऑब्जेक्ट्स के लिए जिस टाइप की लूप को हम यूज़ करते हैं उसे हम कहते हैं फॉर इन लूप फॉर इन लूप से हमारा जो आइट मेटर होता है उसके अंदर हमारे पास ऑब्जेक्ट की कीज आ जाती है फॉर इन लूप को हम ऑब्जेक्ट्स के लिए भी यूज़ कर सकते हैं और बाद में जब हम अरेज के बारे में पढ़ेंगे तो हम अरेज को भी यूज कर पाएंगे अब इसे यूज करने के लिए हम अपने कोड के अंदर एक ऑब्जेक्ट बना लेते हैं लेट्स ट्राई एंड कॉमेंट दिस एंड यहां हम लिख देते अपना फॉर इन लूप एक ऑब्जेक्ट बना लेते स्टूडेंट ऑब्जेक्ट स्टूडेंट के अंदर डिफरेंट वैल्यूज को हम सेव कर सकते हैं लेट सपोज स्टूडेंट का जो नाम है उसे कह देते हैं राहुल कुमार एज को हम कह देते हैं 20 सीजीपीए हम कुछ भी रख सकते हैं वी कैन राइट ट 7.5 एंड क्या पास हो गया है हमारा स्टूडेंट उसके लिए हम वैल्यू को रख सकते हैं ट्रू तो ये हमारा स्टूडेंट ऑब्जेक्ट हो गया अब इस स्टूडेंट ऑब्जेक्ट के ऊपर लूप लगाने के लिए हम क्या करेंगे हम अपना फॉर इन लूप लिखेंगे इसमें सबसे पहले हम एक आइट मेटर बना लेते हैं और फिर ऑफ की जगह हम यहां इन लिखते हैं लेट आई इन स्टूडेंट अपनी ऑब्जेक्ट का नाम एंड उसके बाद यहां पर हर बार हम क्या करेंगे अपने i को प्रिंट करवा देंगे console.log i इसको सेव कर लेते हैं रिफ्रेश किया तो हर बार आ के अंदर क्या आ रहा है हमारे की की वैल्यू आ रही है तो जो हमारा फॉर इन लूप होता है वो हमें हमारी की कीज रिटर्न करता है किसी भी ऑब्जेक्ट की तो कीज यानी ये वाली जो वैल्यूज होती हैं की वैल्यू पेयर में से की रिटर्न करेगा तो इसे इस आइट मेटर को हम अपनी की भी कह सकते हैं तो यहां पे इस वेरिएबल को की नाम दे दिया सेव किया रिफ्रेश किया तो ये सारी की सारी कीज हमारे पास आ गई अब एक बार हमारे पास कीज आ गई इससे प्रिंट कर लेते हैं की इज इक्वल टू दिस वैल्यू एक बार हमारे पास अगर ये की आ गई तो हर की के लिए हम उसकी वैल्यू भी निकाल सकते हैं कैसे निकालते हैं अगर हमारे पास किसी भी ऑब्जेक्ट की की हो तो उसकी वैल्यू निकालने के लिए हमें क्या करना पड़ता है हमें लिखना पड़ता है उस ऑब्जेक्ट का नाम एंड उसके अंदर फिर हम अपनी की की वैल्यू लिखते हैं तो यहां पर स्टूडेंट के अंदर हम अपने की वेरिएबल को पास कर देते हैं यहां पे हमें डबल कोट्स पास करने की जरूरत नहीं है क्योंकि डबल कोट से क्या करेंगे स्टूडेंट के अंदर वो एग्जैक्ट की वैल्यू ढूंढने की कोशिश करेगा बट हमें ऐसे नहीं करना इस बार डबल कोट्स नहीं क्योंकि की हमारा वेरिएबल ही है कोई वैल्यू नहीं है स्ट्रिंग वैल्यू तो उसको हम इसी तरीके से पास करेंगे सेव किया रिफ्रेश किया तो हर की के लिए उसकी वैल्यू भी प्रिंट होके आ गई की है अगर नेम तो वैल्यू है राहुल कुमार की है अगर एज तो वैल्यू है 20 की है अगर सीजीपीए तो वैल्यू है 7.5 तो इस तरीके से की वैल्यू पेयर्स को हम एक्सेस कर सकते हैं यूजिंग द फॉर इन लूप अब ये थे हमारे डिफरेंट डिफरेंट लूप्स जिनको हमने पढ़ा है इन्हीं को यूज करके हम कुछ प्रैक्टिस क्वेश्चंस को सॉल्व करने वाले हैं सबसे पहला क्वेश्चन हमारे पास कहता है कि प्रिंट ऑल द इवन नंबर्स फ्रॉम रो टू 100 हमें रो से लेक 100 तक सारे के सारे इवन नंबर्स को प्रिंट करना है अब इसी का एक सिंपलर वर्जन पहले कर लेते हैं सबसे पहले प्रिंट करवाने की कोशिश करते हैं सारे के सारे नंबर्स को अगर हमें रो से लेकर 100 तक सारे के सारे नंबर्स को प्रिंट करवाना होता तो हम कैसे करवाते हैं यहां पे एक बार पॉज करना है खुद से कोशिश करनी है आप फॉर लूप वाइल लूप डू वाइल लूप किसी भी लूप को यूज कर सकते हो जो आपको पसंद है उससे जीरो से लेकर 100 तक सारे के सारे नंबर्स को हमें प्रिंट करवाने की कोशिश करनी है और इसे अब सॉल्व करते हैं सॉल्व करने के लिए यहां आ जाते हैं प्रैक्टिस क्वेश्चन वन है ये हमारा लेट्स सपोज एक फॉर लूप यूज करते हैं मुझे जीरो से लेकर 100 तक सारे नंबर्स को प्रिंट करवाना है तो हमारा जो आइट मेटर होगा या इसको काउंट हम कह सकते हैं या इसको नंबर कह सकते हैं हमारा जो नंबर है इसको हम जीरो से स्टार्ट कर सकते हैं हैं और ये जो नंबर है इसे हमें 100 तक लेके जाना है तो नंबर लेस दन इक्वल टू जब तक 100 है तब तक हमारी कंडीशन चलती रहेगी हर बार हम नंबर को कर देंगे प्लस प्लस और हर बार हम क्या करवाएंगे हर बार हम अपने नंबर को प्रिंट करवाएंगे तो इसे कह सकते हैं नंबर इज इक्वल टू आर नंबर कर लेते हैं सेव एंड रिफ्रेश तो हमारे पास जितने भी नंबर प्रिंट होके आए रो से लेके 100 तक सारे के सारे नंबर्स हमारे पास प्रिंट होकर आ गए अब हमें सोचना है कि इन नंबर्स में से हम इवन नंबर्स को कैसे सॉर्ट आउट करें हमें पता है जब सारे नंबर्स प्रिंट करवाएंगे ऑड भी प्रिंट होगा इवन भी प्रिंट होगा अब हमें इस तरीके का कुछ सिस्टम चाहिए अगर हमारे पास ऑड नंबर आता है तो उस केस में तो प्रिंट मत करो डोंट प्रिंट और अगर हमारे पास कोई इवन नंबर आता है जैसे जीरो हो गया टू हो गया फोर हो गया सिक्स हो गया एट हो गया उस केस में हमें अपने नंबर्स को प्रिंट करना है तो इस तरीके की जब हमारे पास कंडीशन होती है कि कुछ कंडीशन है वो जब सच होगी तब नंबर्स को प्रिंट करना है और जब सच नहीं होगी तब नंबर्स को प्रिंट नहीं करना तो इस तरीके की कंडीशंस के लिए हम क्या करते हैं हम अपनी कंडीशनल स्टेटमेंट्स को यूज करते हैं तो हम यहां क्या कर सकते हैं लूप के अंदर ही हम अपनी कंडीशनल स्टेटमेंट को यूज करेंगे हम बात करेंगे कि अगर हमारा नंबर एक इवन नंबर है इवन नंबर कैसे चेक करते हैं जो नंबर टू के साथ मॉडलो में हमें जीरो दे दे वो क्या होता है इवन नंबर होता है अगर नंबर इवन नंबर है तो उसे प्रिंट करवा दो नहीं तो उसे प्रिंट मत करवाओ इसी सेम लॉजिक को कोड में लिखने का यह तरीका होता है कि हम अपने ब्लॉक के अंदर लिखे इफ आवर नंबर मॉड्यूल टू इज इक्वल टू 2 यह कौन सी कंडीशन है यह हमारी इवन नंबर की कंडीशन है अगर इवन नंबर होता है तो उस केस में तो नंबर को प्रिंट करवा दो हम प्रिंट करवा देंगे नंबर इज इक्वल टू नंबर और अगर इवन नहीं होता एल्स वाले केस में हमें क्या करना है एल्स वाले केस में हमें कुछ नहीं करना कुछ प्रिंट ही नहीं कराना तो कुछ काम ही नहीं करना तो बेसिकली एल्स वाला केस हम यहां से हटा भी सकते हैं इसको सेव कर लेते हैं रिफ्रेश करेंगे तो इस बार सारे के सारे नंबर्स आप नोटिस करोगे दे आर ऑल इवन नंबर्स जीरो है हमारे पास टू है फोर है सक्स है 8 है 10 12 इस तरीके से सारे के सारे जो नंबर्स प्रिंट हुए हैं ये हमारे इवन नंबर्स हैं यहीं पे अगर हमें ऑड नंबर्स प्रिंट करवाने होते तो कुछ नहीं करना होता इसको नॉट इक्वल टू कर देना था बस जैसे ही नॉट इक्वल टू कर देते ये हमारी ऑड नंबर की कंडीशन बन जाती सेव करते रिफ्रेश करते इस बार सारे नंबर्स ऑड नंबर्स हैं तो शुरुआत ही वन के साथ हो रही है 3 5 7 9 11 इस तरीके से सारे के सारे ऑड नंबर्स को भी हम प्रिंट करवा सकते हैं नेक्स्ट प्रैक्टिस क्वेश्चन हमें कह रहा है क्रिएट अ गेम वयर यू स्टार्ट विद एनी रैंडम गेम नंबर यानी हमें एक ऐसा गेम बनाना है जिसके अंदर हमें कोई भी हमारे एक गेम नंबर होगा उसको हम कुछ भी लिख सकते हैं फॉर एग्जांपल हमारा जो गेम का नंबर है इसको गेम नंबर कह लेते हैं गेम नंबर की शुरुआत की हमने 25 के साथ तो हमें क्या करना है हमें यूजर से पूछना है उस नंबर की वैल्यू तो आस्क द यूजर टू कीप गेसिंग द गेम नंबर अंट्स करेक्ट वैल्यू यानी हम क्या करेंगे हम कोई प्रोमट क्रिएट कर सकते हैं और हम यूजर को बोलेंगे कि सही वैल्यू को गेस करो यूजर हो सकता है फाइव गेस करें तो उस केस में क्या करना है उस केस में हमें पता है फाइव हमारे गेम नंबर के इक्वल नहीं है तो यूजर से फिर दोबारा पूछना है दोबारा प्रोमट में पूछो उस बार अगली बार हो सकता है यूजर 28 गेस करें हमें पता है 28 गलत नंबर है तो उससे दोबारा पूछो तो इस तरीके से बार-बार बारबार यूजर से पूछते रहना है जब तक यूजर ने सही नंबर गेस नहीं कर लिया तो इसके लिए हमें एक गेम क्रिएट करना है अब इसमें सबसे पहले तो प्रैक्टिस क्वेश्चन टू लिख लेते हैं यहां पे सबसे पहले तो हम अपना गेम नंबर लिख सकते हैं लेट गेम नंबर गेम नंबर को हम कुछ भी वैल्यू के साथ इनिश इज कर सकते हैं लेट्स कॉल इट 25 कि हमारे गेम का नंबर है 25 एंड यूजर को जो है ये गेम नंबर गेस करना है अब हम क्या करेंगे सबसे पहले यूजर को बोलेंगे कि गेस करो तो फर्स्ट टाइम तो यूजर सिर्फ अपना नंबर जो है उसको गेस करेगा तो यूजर से गेस करवाने के लिए एक प्रोमट क्रिएट कर लेते हैं गेस द गेम नंबर तो यूजर से कोई नंबर जो है उसको पूछेंगे और उसे एक वेरिएबल के अंदर स्टोर करा लेंगे इसको हम कह देते हैं यूजर नंबर यूजर ने जो नंबर एंटर किया और अभी के लिए क्या करेंगे इसे कसोल ड लॉग करके प्रिंट करवा देंगे कि यूजर ने हमारे लिए यह नंबर एंटर किया सेव कर देते हैं रिफ्रेश करते हैं हमें हमारे पास प्रोमट आ रहा है गेस द गेम नंबर लेट्स सपोज हमने गेस किया 50 ओके कर दिया तो हमारे पास 50 प्रिंट होकर आ गया वहीं पे अगर हम फाइव गेस करते तो हमारे पास फाइव प्रिंट होके आ गया अभी तो इतना किया है हमने अब हमें क्या करना है इस यूजर नंबर को इस गेम नंबर के साथ मैच करने की कोशिश करनी है तो हम क्या कर सकते हैं एक हम वाइल लूप चला सकते हैं और ये वाइल लूप कब तक चलेगा इस वाइल लूप के अंदर बेसिकली हम अपने गेम को प्ले करेंगे और ये तब तक चलेगा जब तक यूजर सही नंबर मैच नहीं कर देता तो हमें इस वाइल लूप के अंदर इस वाइ लूप को तब तक रन करना है जब तक हमारे यूजर नंबर की वैल्यू इज नॉट इक्वल टू हमारे गेम नंबर की वैल्यू यानी यूजर नंबर जब तक हमारे गेम नंबर के इक्वल नहीं हो जाता तब तक हमारा वाइल लूप चलता रहेगा और जैसे ही ये दोनों वैल्यूज इक्वल हो गई उस केस में हम क्या करेंगे उस केस में लूप को खत्म कर देंगे और लास्ट में जाके हम प्रिंट करवा देंगे कसोल डलॉग कांग्रेचुलेशन यू एंटर्ड द राइट नंबर तो इस तरीके का हम कुछ करने वाले हैं तो गेम नंबर हमारे पास ऑलरेडी है यूज़र से हमने फर्स्ट टाइम अपना नंबर गेस करवा लिया फिर एक वाइल लूप के अंदर गेम चलता रहेगा अगर यूज़र ने गलत नंबर एंटर किया तो इस वाइल लूप के अंदर दोबारा उससे अगला नंबर पूछा जाएगा दोबारा पूछा जाएगा दोबारा पूछा जाएगा तब तक पूछा जाएगा जब तक यूज़र सही नंबर एंटर नहीं कर देता जैसे ही वह सही नंबर एंटर करेगा वैसे ही हम प्रिंट करवा देंगे कांग्रेचुलेशन यहां स्पेलिंग ठीक लग कर लेते हैं कांग्रेचुलेशन यू एंटर्ड द राइट नंबर अब यहां पर हमें अपने गेम के लॉजिक को सोचना है लेट्स सपोज ये लूप कब रन करेगा यह लूप तभी रन करेगा जब यूजर ने गलत नंबर एंटर किया अगर यूजर गलत नंबर एंटर करता है तो हम क्या करेंगे हम उससे दोबारा पूछेंगे तो दोबारा हम एक प्रोमट क्रिएट करेंगे एंड उसको बताएंगे यू एंटर्ड रंग नंबर एंड फिर उसे बोलेंगे गेस अगेन कि दोबारा उसे नंबर को गेस करना है और सेकंड टाइम यूजर जिस नंबर को गेस करेगा उसे दोबारा से इसी वेरिएबल के अंदर हम सेव करवा सकते हैं नया वेरिएबल बनाने की हमें जरूरत नहीं है यूजर नंबर के अंदर ही उसे हम सेव करवा सकते हैं तो यूजर नंबर के अंदर दोबारा आ जाएगा फिर दोबारा से चेक करेंगे अगर यूजर ने सेकंड टाइम जो नंबर गेस किया क्या वो गेस नंबर गेम नंबर के इक्वल है अगर नहीं है इक्वल दोबारा गेस करवाओ दोबारा गेस करवाओ दोबारा गेस करवाओ जैसे ही इक्वल हो जाता है लास्ट में कांग्रेचुलेशन प्रिंट कर दो ये होगा हमारा एक्चुअल गेम व्हिच विल बी अ वर्किंग गेम इसको रिफ्रेश करके स्टार्ट करते हैं लेट्स स्टार्ट गेसिंग द नंबर फॉर एग्जांपल मैंने 50 गेस किया ओके यहां लिखा आ रहा है आपने गलत नंबर को गेस किया यू गेस द रॉन्ग नंबर गेस अगेन तो इस बार हम 100 गेस कर लेते हैं ओके इस बार भी कह रहा है कि गलत गेस किया है लेट्स गेस 10 ओके इस बार भी कह रहे हैं गलत गेस किया है तो इस बार 30 गेस कर लेते हैं ये भी गलत नंबर है पर जैसे ही मैं सही नंबर गेस करूंगी माय गेम नंबर वाज 25 जैसे हम 25 एंटर करेंगे जैसे ही ओके किया ओके देयर इज अ प्रॉब्लम विद प्रोमट प्रोमट के साथ हमारा नंबर जो है वो इसलिए मैच नहीं कर रहा क्योंकि हमने डबल इक्वल टू लिख दिया बेसिकली प्रोमट से जो भी इनपुट आता है नंबर की फॉर्म में भी वो हमारे पास एक स्ट्रिंग होती है तो हमेशा प्रोमट स्ट्रिंग रिटर्न करता है तो इसीलिए स्ट्रिंग क्या कर रही है स्ट्रिंग इस नंबर के साथ मैच नहीं हो पा रही इसको सेव करके दोबारा एक बार अपने गेम को जो है ओके लेट्स ट्राई टू रीस्टार्ट आवर गेम नए टैब के अंदर हम अपने गेम को रीस्टार्ट कर लेते हैं हम अपने गेम को स्टार्ट कर देते हैं विद द नंबर 25 इट सेल्फ इंस्पेक्ट करेंगे दोबारा कंसोल के अंदर आए क्या आ रहा है कांग्रेचुलेशन यू एंटर द राइट नंबर रिफ्रेश करके दोबारा गेम को स्टार्ट करते हैं मैंने एंटर किया 30 या 20 एंटर किया ओके दिखा रहा है गेस किया रॉन्ग नंबर इस बार हमने एंटर किया 50 रॉन्ग नंबर और इस बार हमने एंटर किया 25 जैसे ही ओके क्लिक करेंगे वैसे ही दिखा रहा है कांग्रेचुलेशन यू एंटर्ड द राइट नंबर तो इस तरीके से हम अपने गेम को प्ले कर सकते हैं ये गेम तब तक चलेगा जब तक यूजर सही नंबर एंटर नहीं कर देता एक इंपॉर्टेंट चीज हमने जानी कि प्रोमट के अंदर हमारे पास नंबर्स जो आ रहे हैं वो स्ट्रिंग की फॉर्म में आ रहे हैं तो गलती से भी डबल इक्वल टू मत कर देना नहीं तो हमें दोबारा से मेरी तरह आपको नया टैब खोलना पड़ जाएगा बट हां इसको हम रोक सकते थे डबल इक्वल टू तब आप कर सकते हो जब गेम नंबर भी एक स्ट्रिंग की फॉर्म में आप इस तरीके से डिफाइन करते हैं तो ये थे हमारे प्रैक्टिस क्वेश्चंस एंड दिस वाज ऑल अबाउट लूप्स नेक्स्ट टॉपिक जिसको हम स्टार्ट करेंगे दैट इज स्ट्रिंग्स स्ट्रिंग्स काफी इंपॉर्टेंट पार्ट होते हैं जावास्क्रिप्ट का एंड इन्हें हम बहुत ज्यादा फ्रीक्वेंसी क्वेंस ऑफ कैरेक्टर्स यूज्ड टू रिप्रेजेंट टेक्स्ट जब भी हमें कोई टेक्चुअल इंफॉर्मेशन लिखनी होती है हम मुझे कोई नेम लिखना है मुझे कोई लेट्स सपोज सेंटेंस लिखना है मुझे कोई पैराग्राफ लिखना है जावास्क्रिप्ट के अंदर सारे के सारे काम हम स्ट्रिंग्स की फॉर्म में कर रहे होते हैं अब सबसे पहले हम बात करेंगे कि हम स्ट्रिंग्स को क्रिएट कैसे करते हैं स्ट्रिंग्स को क्रिएट करने के लिए हम लिखते हैं लेट फिर अपने स्ट्रिंग वेरिएबल का नाम और फिर हम अपनी स्ट्रिंग की वैल्यू लिख देते हैं जैसे यहां पर अगर मुझे एक नई स्ट्रिंग को क्रिएट करना है लेट एसआर इज इक्वल टू और स्ट्रिंग्स को क्रिएट करने के दो तरीके होते हैं सबसे पहला तो हम डबल कोड्स के अंदर किसी स्ट्रिंग को क्रिएट कर सकते हैं तो इस तरीके से हम अपनी स्ट्रिंग को क्रिएट कर सकते हैं सेव किया रिफ्रेश किया यहां पर हम प्रिंट करवा सकते हैं अपनी स्ट्रिंग की वैल्यू को दूसरा तरीका होता है स्ट्रिंग को क्रिएट करने का इसको कह देते हैं एसआर 2 इज इक्वल टू कि हम सिंगल कोड्स को यूज करें तो सिंगल कोड्स के अंदर भी अगर हम कोई स्ट्रिंग यूज कर रहे हैं क्रिएट कर रहे हैं तो वो भी एक वैलिड तरीका है तो दोनों में से किसी भी तरीके से हम अपनी स्ट्रिंग को क्रिएट कर सकते हैं पर एक तरीका होगा कि आप सोचे यहां तो मैं डबल कोड्स लिख दूं और यहां पे मैं सिंगल कोड लिख दूं तो इस तरीके से हमें स्ट्रिंग को क्रिएट नहीं करना डबल कोड्स है तो ओपनिंग एंड एंडिंग दोनों डबल कोट्स करेंगे सिंगल कोट है तो ओपनिंग एंड एंडिंग दोनों सिंगल कोट्स करेंगे नहीं तो हमारे पास एरर आ सकता है अब जितनी भी स्ट्रिंग्स को जावास्क्रिप्ट के अंदर हम क्रिएट करते हैं उन सारी की सारी स्ट्रिंग्स के पास कुछ इनबिल्ट प्रॉपर्टीज होती हैं और कुछ इनबिल्ट फंक्शंस होते हैं इन्हीं इनबिल्ट फंक्शंस को हम मेथड्स कह देते हैं अभी के लिए बात करते हैं प्रॉपर्टीज के ऊपर कुछ इनबिल्ट प्रॉपर्टीज होती हैं और इनमें से सबसे इंपॉर्टेंट प्रॉपर्टी होती है हमारी लेंथ प्रॉपर्टी प्रॉपर्टी कहने का मतलब है जैसे ऑब्जेक्ट है ऑब्जेक्ट के पास कुछ की वैल्यू पेयर्स होते हैं तो वहां पे की जो होती है वो ऑब्जेक्ट के बारे में इंफॉर्मेशन स्टोर कर रही है वैसे ही स्ट्रिंग्स के अंदर हमारे पास कुछ-कुछ इंटरनल इनको वेरिएबल कह सकते हैं कि हर स्ट्रिंग का अपना एक इंटरनल वेरिएबल होगा जो उसके बारे में कुछ वैल्यू स्टोर करेगा और इनमें से एक इंटरनल वेरिएबल जो हर स्ट्रिंग के पास होता है वो होता है लेंथ वेरिएबल किसी भी स्ट्रिंग की अगर हमें लेंथ प्रिंट करनी है तो उसके लिए हम लिख सकते हैं एटीआर स्ट्रिंग का नाम डॉट लेंथ तो हमारे पास उसकी लेंथ आ जाएगी जैसे हमने स्ट्रिंग का साइज कैलकुलेट किया था वही हमें कैलकुलेट करने की जरूरत नहीं पड़ती खुद से वो ऑटोमेटिक पहले से स्टोर्ड होता है जावास्क्रिप्ट के अंदर फॉर एग्जांपल यहां रिफ्रेश करें तो ये था हमारा एटीआर और हम एसआर डॉट लेंथ लिख के एसआर डॉट लेंथ लिख के स्ट्रिंग की लेंथ प्रिंट करवा सकते हैं व्च इज इक्वल टू 11 सो दिस इज 11 कैरेक्टर्स एटीआर 2 की भी हम लेंथ प्रिंट करवा सकते हैं व्हिच इज इक्वल टू 7 एंड इफ यू काउंट दीज आर सेवन कैरेक्टर्स तो जो हमारी लेंथ है वो हमें टोटल नंबर ऑफ कैरेक्टर्स इन अ स्ट्रिंग रिटर्न करके दे देती है एंड इसके अलावा हम चाहे तो स्ट्रिंग के इंडिविजुअल इंडेक्स को भी एक्सेस कर सकते हैं अब जो स्ट्रिंग है उन्हें एक तरीके से यहां पे हमें नजर आ रहा होगा वो ऑब्जेक्ट की तरह बिहेव कर रही है ऑब्जेक्ट की तरह कैसे जैसे ऑब्जेक्ट के अंदर की होती है हम लिखते हैं ऑब्जेक्ट डॉट की उससे हम उसकी वैल्यू निकाल लेते हैं वैसे ही हम यहां लिख रहे हैं स्ट्रिंग डॉट लेंथ और उससे हम उसकी वैल्यू निकाल रहे हैं वैसे ही जैसे हम ऑब्जेक्ट के अंदर इस तरीके से अपनी की की वैल्यू लिख देते हैं वैसे ही स्ट्रिंग्स के अंदर हम क्या लिख सकते हैं स्ट्रिंग का नाम और उसके बाद जिस भी पोजीशन का हमें कैरेक्टर चाहिए उस कैरेक्टर को इंडिविजुअल कैरेक्टर को भी हम एक्सेस कर सकते हैं इसके लिए एग्जांपल के लिए फॉर एग्जांपल हमारे पास हमारी स्ट्रिंग है अपना कॉलेज वी हैव आवर स्ट्रिंग अपना कॉलेज इस अपना कॉलेज स्ट्रिंग के अंदर हर एक कैरेक्टर के पास ओरिजिनल अपनी एक पोजीशन होती है और यह जो पोजीशन होती है यह हमेशा जीरो से स्टार्ट होती है यह पोजीशन जीरो है यह वन है टू है थ्री है फोर है फाइव है सिक्स है सेन है 8 है नाइन है एंड ये 10 है ये इंडिविजुअल पोजीशंस है एंड प्रोग्रामिंग के अंदर ये सारी की सारी पोजीशंस हमारी जीरो से स्टार्ट होती है और ये जो पोजीशंस होती हैं इन पोजीशंस को हम इंडेक्स भी बोलते हैं सिंगुलर फॉर्म होती है इंडेक्स प्लूरल फॉर्म होती है इंडा इसस दोनों का सेम ही मतलब है पोजीशन की बात कर रहे हैं कैरेक्टर की पोजीशन की तो यहां पर इंडेक्स नंबर जीरो पे हमारे पास कैरेक्टर है a इस कैरेक्टर को मुझे अगर एक्सेस करना है तो उसके लिए सिंपली मुझे लिखना पड़ेगा कसोल डलॉग s ऑफ 0 तो उससे क्या होगा रो एथ पोजीशन वाला कैरेक्टर मेरे पास आ जाएगा व्हिच इज इक्वल टू a इसको सेव कर लेते हैं रिफ्रेश करते हैं हमारे पास प्रिंट होक आया a अगर मुझे फर्स्ट पोजीशन वाला चाहिए यानी इंडेक्स वन वाला चाहिए तो उसके लिए हमारे पास p प्रिंट होके आएगा सेव करेंगे रिफ्रेश करेंगे सो दिस विल बी इक्वल टू p इसी तरीके से अगर कोई भी रैंडम एथ पोजीशन वाला कैरेक्टर चाहिए तो यहां पे एथ पोजीशन क्या होगी 0 1 2 3 4 5 6 7 8 हमारे पास e प्रिंट होके आना चाहिए सेव किया रिफ्रेश किया e प्रिंट होके आ गया तो इस तरीके से इंडिविजुअल पोजीशन वाले कैरेक्टर्स को भी हम स्ट्रिंग्स के अंदर एक्सेस कर सकते हैं अब ये तो हो गई नॉर्मल स्ट्रिंग को क्रिएट करना उसे यूज करना साथ के साथ इन जावास्क्रिप्ट वी हैव समथिंग कॉल्ड टेंप्लेट लिटरल्स टेंप्लेट लिटरल्स इज अ वे टू हैव एंबेडेड एक्सप्रेशंस इन स्ट्रिंग्स यानी नॉर्मली अगर हम कोई स्ट्रिंग बनाते हैं तो स्ट्रिंग को हम इस तरीके से बना सकते हैं पर स्ट्रिंग्स को बनाने का एक और तरीका भी होता है जैसे यहां पर अगर आई राइट टेंप्लेट लिटरल्स अगर हम कोई रैंडम लेट्स सपोज कोई सेंटेंस लिख दिस इज माय रैंडम सेंटेंस तो इस सेंटेंस को स्टार्ट करने के लिए हम बैक टेक्स को भी यूज कर सकते हैं बैक टेक्स होता है टेढ़ा कोट यह हमारे कीबोर्ड के ऊपर अवेलेबल होगा जनरली लेफ्ट साइड में टॉप राइट कॉर्नर में हमारे पास अवेलेबल होता है बैक टक अब बैक टक्स को इस तरीके से यूज किया जाता है बैक टक्स के अंदर हम कोई भी टेक्स्ट लिख सकते हैं दिस इज अ टेंप्लेट लिटरल टेंप्लेट लिटरल बेसिकली कह सकते हैं स्पेशल टाइप की स्ट्रिंग होती है इसको कह सकते हैं स्पेशल टाइप की स्ट्रिंग है हमारे पास माय टप लिटरल दिस इज अ स्पेशल स्ट्रिंग और इसको हम चाहे तो प्रिंट करवा सकते हैं कसोल डलॉग हमारी स्पेशल स्ट्रिंग जो है इसको हम प्रिंट करवा लेते हैं सेव किया रिफ्रेश किया तो ये क्या आ गया दिस इज अ टेंप्लेट लिटरल जो स्ट्रिंग की वैल्यू थी वो हमारे पास आ गई हम चाहे तो इसका टाइप भी प्रिंट करवा सकते हैं टाइप ऑफ स्पेशल स्ट्रिंग क्या होता है हमारे पास स्ट्रिंग ही होता है यानी ये जो टेंप्लेट लिटरल जिसको हम कह रहे हैं ये है तो स्ट्रिंग ही बस ये कैसे क्रिएट हुई है बैक टेक्स की फॉर्म में क्रिएट हुई है अब यहां पे हमारे पास सवाल आ सकता है जब स्ट्रिंग ही क्रिएट करनी थी तो डबल कोड्स था सिंगल कोड्स था बैकटिक्स क्यों यूज करने की जरूरत है तो उसके लिए हम क्या करेंगे एक प्रैक्टिकल एग्जांपल देखते हैं फॉर एग्जांपल हमारे पास कोई ऑब्जेक्ट है और इसको कह देते हैं कोई भी ऑब्जेक्ट है ओजे कह देते हैं इसके अंदर हमारे पास कोई भी आइटम है एंड उस आइटम का हमारे पास प्राइस है फॉर एग्जांपल पेन है और पेन का हमने प्राइस स्टोर कर रखा है प्राइस इज इक्वल टू इसको कह देते हैं ₹10 ये हमने ऑलरेडी स्टोर किया हुआ है एंड यह हमारी ऑब्जेक्ट है अब अगर हमें इस ऑब्जेक्ट का आइटम एंड प्राइस दोनों प्रिंट करवाने हैं एक ही लाइन के अंदर तो हम अभी तक कैसे करते आए हैं हम लिखेंगे console.log द आइटम या द कॉस्ट ऑफ फिर हम आइटम को प्रिंट करवाएंगे कॉमा करके हम लिखेंगे आइटम फिर कॉमा करके हम लिखेंगे इज फिर कॉमा करके हम लिखेंगे प्राइस एंड क्योंकि डायरेक्टली नहीं एक्सेस कर सकते तो इसको लिखेंगे ऑब्जेक्ट डॉट एंड ऑब्जेक्ट डॉट तो इस तरीके से कसोल डलॉग करके हम अपनी वैल्यू को प्रिंट करवाएंगे सेव कर लेते हैं रिफ्रेश कर लेते हैं तो यहां यहां पे लिखा हुआ आरहा है द कॉस्ट ऑफ पेन इज ₹10 इसको कह देते हैं 10 ये हमारी 10 वैल्यू आ जाएगी और फिर कॉमा करके हमें अलग से रुपीज जो है इसको प्रिंट करवाना पड़ेगा सेव कर लेते हैं रिफ्रेश करते हैं इस बार आ रहा है द कॉस्ट ऑफ पेन इज ₹10 इस तरीके से एक स्ट्रिंग की फॉर्म में हमने प्रिंट करवा दिया अब इसी को करने का एक और बेटर तरीका होता कि बार-बार हमने एक छोटी स्ट्रिंग बनाई फिर वेरिएबल लिखा फिर स्ट्रिंग बनाई फिर वेरिएबल लिखा फिर स्ट्रिंग बनाई इस पूरी चीज को क्यों ना मैं एक सिंगल स्ट्रिंग के अंदर कंबाइन कर दूं और इसको सिंगल स्ट्रिंग के अंदर कंबाइन करने का तरीका होता है हमारे टेंप्लेट लिटरल्स टेंप्लेट लिटरल्स के अंदर स्ट्रिंग के साथ हम अपने वेरिएबल को भी लिख सकते हैं फॉर एग्जांपल यहां मैं एक स्ट्रिंग बनाती आउटपुट स्ट्रिंग इसको कह देते हैं लेट आउटपुट इज इक्वल टू और ये हमारी टेंप्लेट लिटरल टाइप की स्ट्रिंग होती और इसमें हम लिखते द कॉस्ट ऑफ और फिर अगर कोई भी वेरिएबल हमें लिखना होता है तो उसके लिए हम लिखते हैं डॉलर साइन और फिर कर्ली ब्रेसेज और इसके अंदर हम किसी भी वेरिएबल का नाम लिख सकते हैं वेरिएबल का भी नाम लिख सकते हैं कोई एक्सप्रेशन हो उसको भी लिख सकते हैं तो ये हमारे वेरिएबल का नाम आ जाएगा और इसी स्ट्रिंग के अंदर कंटिन्यू कर सकते हैं कोई कॉमा की जरूरत नहीं है इज फिर हम लिख देंगे अपने ऑब्जेक्ट प्राइस का नाम ऑब्जेक्ट डॉट प्राइस एंड रुपीज यह जो चीज है कसोल डलॉग के अंदर यानी अब अगर मैं सिंपली करूं कसोल डलॉग माय आउटपुट यह जो कोड है इसे समझना काफी सिंपलर है एज कंपेयर्ड टू दिस थिंग और इसको लिखना भी ज्यादा आसान है एक बार हमें टेंप्लेट लेटर्स लिखने की आदत हो गई जो बहुत ही कमाल की चीज होती है जावास्क्रिप्ट के अंदर तो उसके बाद शायद ही हम इस तरीके से चीजों को लिख रहे होंगे तो यहां पर जो हमें बार-बार कॉमा लगाने पड़ रहे हैं चीजें करनी पड़ रही है यहां से सिंपली हमारा प्रॉपर्ली पूरा आउटपुट प्रिंट हो जाएगा एंड सेम लाइन प्रिंट होगी इसको सेव कर लेते हैं रिफ्रेश करेंगे तो इस बार प्रिंट होके आया द कॉस्ट ऑफ पेन इज ₹10 एक चीज आप नोटिस करोगे पहले वाले आउटपुट में ये 10 हाईलाइट होके आ रहा था हाईलाइट होके कैसे आ रहा था दोनों को प्रिंट करवाते हैं रिफ्रेश किया तो ये 10 हाईलाइट होके इसलिए आ रहा था क्योंकि एक नंबर है इंडिविजुअली ये क्या है एक नंबर है तो नंबर्स हमारे आउटपुट में हाईलाइट होके आते हैं बट क्योंकि मैंने टेंप्लेट लेटरल क्रिएट किया तो टेंप्लेट लेटरल में ये नंबर कहां चला गया स्ट्रिंग का पार्ट बन गया तो इस बार हमारी जो 10 वाली वैल्यू है वो हाईलाइट होकर नहीं आ रही तो एक सिंगल स्ट्रिंग के अंदर कन्वर्ट हो गया है हमारा आउटपुट तो इस तरीके से जनरली हम टेंप्लेट लिटरल्स को यूज़ करते हैं और ये जो तरीका है जिसमें हम टेंप्लेट लिटरल्स के अंदर प्लेस होल्डर्स ऐड कर रहे हैं बेसिकली इस तरीके से कोई भी एक्सप्रेशन या कोई भी वेरिएबल हम लिख सकते हैं इसी फिनोमिना को इसी चीज को हम स्ट्रिंग इंटरपोलेशन कहते हैं तो कोई इंटरव्यूज के अंदर पूछता है टेंप्लेट लिटरल्स क्या होते हैं तो टेंप्लेट लिटरल्स होते हैं हमारी स्ट्रिंग्स ही होती हैं बस बैक टिक से क्रिएट करते हैं और उसके अंदर बेसिकली हम अपने एक्सप्रेशंस को एंबेड कर सकते हैं अब जैसे ही हमने एक्सप्रेशन को एंबेड कर लिया यानी कुछ प्लेस होल्डर्स डाल दिए जिनकी वैल्यू रन टाइम पे हमारे पास कैलकुलेट होके आ रही होगी इसी फिनोमिना को हम स्ट्रिंग इंटरपोलेशन कहते हैं अब यहां तो वैसे तो हमने क्या किया अपने वेरिएबल को ऐड किया है इतने पार्ट को चाहे तो हटा सकते हैं बट हम चाहे तो टेंप्लेट लिटरल के अंदर एक्सप्रेशंस को भी ऐड कर सकते हैं यानी मैं ऐड कर सकती हूं 1 प् 2+ 3 1 प् 2+ 3 हमारे पास 6 होता है सेव करेंगे रिफ्रेश करेंगे ओके टाइप ऑफ की जगह स्ट्रिंग ही अपनी प्रिंट करवाते हैं रिफ्रेश किया हमारे पास आ रहा है दिस इज अ टेंप्लेट लिटरल और फिर वैल्यू आ रही है सिक्स यानी डॉलर एंड ये जो हमारे कर्ली ब्रेसस होते हैं इसके अंदर कुछ भी चीज जो लिखी होती है उसकी पहले वैल्यू कैलकुलेट होती है और फिर वो वैल्यू स्ट्रिंग का पार्ट बनती है तो इस तरीके से हमारे टेंप्लेट लिटरल्स काम करते हैं अब टेंप्लेट लिटरल्स के साथ में वी आल्सो हैव समथिंग कॉल्ड एस्केप कैरेक्टर्स एस्केप कैरेक्टर्स भी हमारे स्ट्रिंग का पार्ट होते हैं कैरेक्टर्स एस्केप कैरेक्टर्स कहने का मतलब होता है जैसे कभी कभार अगर कसोल डलॉ के अंदर हमारे पास बहुत बड़ा सा कोई आउटपुट है लेट्स सपोज हमें कसोल डलॉ के अंदर प्रिंट करवाना है अपना कॉलेज यह बड़ा आउटपुट नहीं लिया छोटा सा आउटपुट लिया मैंने अपना कॉलेज इस तरीके से मुझे प्रिंट करवाना है पर मैं चाहती हूं अपना एक लाइन में आ जाए और कॉलेज सेकंड लाइन में आ जाए तो उसके लिए मुझे क्या करना पड़ेगा अलग से इसको मुझे कट करके दोबारा एक और कसोल डलॉग की स्टेटमेंट लिखनी पड़ेगी पर एक और तरीका होता है हमारे पास तरीका ये होता है कि हम क्या कर सकते हैं बै n यहां पे लिख सकते हैं ये आप आपको हाईलाइट होके भी दिखाई दे रहा होगा बै स् n हमारा एक एक टाइप ऑफ एस्केप कैरेक्टर होता है जिसका काम होता है स्ट्रिंग के अंदर नेक्स्ट लाइन दे देना इसको जैसे ही सेव करेंगे रिफ्रेश करेंगे बै स्ल ए हमारे लिए प्रिंट नहीं होगा बट जहां पे भी बै स्ल n आ गया वहां से नेक्स्ट लाइन आ जाएगी तो अपना एक लाइन में आ गया कॉलेज एक लाइन में आ गया अब कॉलेज के पहले जो स्पेस है उसे हटाने के लिए एक पीछे कर लेते हैं एंड यहां से भी स्पेस हटा सकते हैं रिफ्रेश कर दिया तो तो जो हमारे एस्केप कैरेक्टर्स होते हैं वो खुद प्रिंट नहीं होते वो कुछ काम हमें करके दे वैसे ही अगर मुझे टैब का स्पेस चाहिए होता तो उसके लिए हम स्लटी को यूज करते हैं तो यह हमें टैब स्पेस दे देती है तो n की जगह हम टी यूज कर सकते हैं सेव किया रिफ्रेश किया तो बीच में एक टैब का स्पेस हमारे पास आ गया तो एस्केप कैरेक्टर्स भी होते हैं हमारी स्ट्रिंग्स के अंदर और जब हम स्ट्रिंग की लेंथ को प्रिंट करवाते हैं यानी अगर मैं इस चीज को इफ आई ट्राई टू सेव इट इन अ स्ट्रिंग लेट एटीआर इ इक्वल टू यह अगर हमारे पास स्ट्रिंग है और अब मैं स्ट्रिंग की लेंथ को प्रिंट करवाऊं तो हम ये सोच सकते हैं कि स्ट्रिंग की लेंथ क्या होनी चाहिए स्ट्रिंग की लेंथ होनी चाहिए 1 2 3 4 5 6 7 8 9 10 11 12 13 हम एक्सपेक्ट करेंगे स्ट्रिंग की लेंथ 13 होनी चाहिए लेकिन एक्चुअली जो स्ट्रिंग की लेंथ आएगी वो 12 आएगी क्योंकि एस्केप कैरेक्टर्स के अंदर इवन दो हम दो कैरेक्टर्स लिखते हैं स्लैश और t बट वो दोनों हमारे एक सिंगल कैरेक्टर की तरह काउंट होते हैं सेव करेंगे रिफ्रेश करेंगे आउटपुट में हमारे पास आएगा 12 तो एस्केप कैरेक्टर का अगर आपके पास कोई ट्रिकी इंटरव्यू क्वेश्चन आ जाता है कभी बैठते हुए कि स्ट्रिंग की आप लेंथ निकाल के दिखाओ तो इस तरीके से हमें पता होना चाहिए एस्केप कैरेक्टर्स की लेंथ जो है वो दो कैरेक्टर नहीं बल्कि एक सिंगल कैरेक्टर की तरह काउंट होती है नेक्स्ट हम बात करने वाले हैं और भी एक लेवल अप अपने स्ट्रिंग्स के अंदर अबाउट अ टॉपिक कॉल्ड स्ट्रिंग मेथड्स अब स्ट्रिंग के अंदर अपनी लेंथ प्रॉपर्टी के बारे में तो हमने पढ़ लिया इसके अलावा स्ट्रिंग के अंदर एक इंपॉर्टेंट कांसेप्ट होता है हमारे पास स्ट्रिंग मेथड्स का स्ट्रिंग मेथड्स का मतलब होता है स्ट्रिंग फंक्शंस फंक्शंस एंड मेथड्स ऐसी टर्म है जो आपको बहुत बार सुनने को मिलेगी प्रोग्रामिंग के अंदर और दोनों का जब तक हम आगे के टॉपिक्स नहीं पढ़ते दोनों का सेम ही मतलब हमें समझना है तो कोई भी मेथड क्या होता है मेथड या फंक्शन क्या होता है मेथड होता है कुछ भी काम करवाना कुछ भी काम हमें करके देना फॉर एग्जांपल यह जो लॉग हैय एक मेथड है य लॉग क्या काम कर रहा है यह लॉग हमारे लिए कुछ भी चीज प्रिंट करवाने का काम कर रहा है वैसे ही स्ट्रिंग्स के पास भी अपने कुछ मेथड होते हैं जो स्ट्रिंग्स के ऊपर कुछ काम हमें करके देते हैं तो मेथड इज लाइक अ ब्लॉक ऑफ कोड जो हमारे लिए कुछ काम हमें करके देता है तो स्ट्रिंग के बहुत सारे बिल्ट इन मेथड्स होते हैं द बिल्ट इन फंक्शंस दैट आर यूज्ड टू मैनिपुलेट अ स्ट्रिंग स्ट्रिंग को मैनिपुलेट करना है यानी उसकी वैल्यू के अंदर कुछ चेंज लेके आना तो सबसे पहला मेथड जिसकी हम बात करने वाले हैं दिस मेथड इज कॉल्ड टू अपर केस हमारे पास अगर कोई भी स्ट्रिंग है फॉर एग्जांपल आई हैव दिस स्ट्रिंग ए बी सी इसको अगर हमें कंप्लीट अपर केस के अंदर कन्वर्ट करना है तो उसके लिए यह मेथड हम अपनी स्ट्रिंग के ऊपर अप्लाई कर सकते हैं हम अपनी स्ट्रिंग का नाम लिखते हैं एसआर डॉट और फिर हम अपने मेथड का नाम लिखते हैं एंड थड का नाम लिखने के बाद हम अपने पेंसिस को यूज करते हैं तो इस तरीके से हम अपने किसी भी मेथड को फंक्शन को अप्लाई करते हैं अब जैसे हमने स्ट्रिंग डॉट लेंथ लिखा तो लेंथ क्या है स्ट्रिंग की एक प्रॉपर्टी है जो हमें डायरेक्टली अपनी वैल्यू दे देगी बट ये क्या है ये एक मेथड है जो हमें कुछ काम करके देगा काम क्या देगा इस स्ट्रिंग को इस स्ट्रिंग के अंदर कन्वर्ट करके देगा फॉर एग्जांपल यहां पर लेट्स क्रिएट अ स्ट्रिंग लेट एटीआर इज इक्वल टू हम क्रिएट करते हैं लेट्स सपोज वी राइट अपना कॉलेज इसको सेव कर लेते हैं अब यहां रिफ्रेश करके लेट्स ट्राई टू प्रिंट एसडीआर तो हमारे पास ये हमारी स्ट्रिंग आ गई और जैसे ही हम इसके ऊपर मेथड अप्लाई करेंगे ए2 अपर केस एक चीज यहां पे नोटिस करना ये जो चीज लिखी हुई है ये भी कैमल केस के अंदर लिखी हुई है जिसकी हमने शुरुआत में बात की थी यानी ऑलरेडी जावास्क्रिप्ट के अंदर जो इनबिल्ट चीजें हैं वो भी कैमल केस के अंदर हमारे जो फंक्शन एंड मेथड या वेरिएबल होते हैं वो भी जनरली कैमल केस के अंदर लिखे होते हैं पर सिर्फ इतना लिखने से कुछ नहीं होगा इसके बाद हमें क्या करना पड़ेगा इसके बाद हमें पैरेंस लगाने पड़ेंगे तब जाके हमारी जो स्ट्रिंग है ओरिजिनल स्ट्रिंग वो अपर केस के अंदर सारी की सारी जो कैरेक्टर्स हैं वो अपर केस के अंदर कन्वर्ट होकर आ रहे होंगे तो इस तरीके से हम अपनी स्ट्रिंग के अंदर चेंज करते हैं अब एक चीज नोटिस करने वाली है एक चीज हम नोटिस करेंगे कि यहां पर अगर मैंने लिखा स्ट्रिंग डॉटू अपर केस और पेंसिस इस तरीके से और फिर मैंने क्या की फिर अपनी स्ट्रिंग की वैल्यू प्रिंट करवाने की कोशिश की सेव किया रिफ्रेश किया तो यहां क्या प्रिंट होके आ रहा है यहां तो प्रिंट होके आ रहा है नॉर्मली जो हमारी ओरिजिनल स्ट्रिंग थी पर हमने तो प्रिंट करवाने से पहले अपर केस के अंदर कन्वर्ट कर दिया था तो फिर हमारी ओरिजिनल वैल्यू क्यों प्रिंट होके आई इसका रीजन यह है कि जो भी जितने भी हमारे मेथड्स होते हैं स्ट्रिंग वाले मेथड्स उनमें से कोई भी मेथड ओरिजिनल स्ट्रिंग को चेंज नहीं करता मतलब यह जो हमारी स्ट्रिंग है इसको कभी चेंज नहीं किया जाएगा यह मेथड हमेशा एक नई वैल्यू रिटर्न कर रहा होता है जैसे अगर मैंने किसी भी स्ट्रिंग के ऊपर अपना मेथड अप्लाई किया तो वो ओरिजिनल स्ट्रिंग के अंदर चेंज नहीं करेगा ओरिजिनल स्ट्रिंग तो वही रहेगी वो एक न्यू स्ट्रिंग क्रिएट करेगा मेथड विद द न्यू वैल्यू तो यहां पे जो भी भी ये न्यू स्ट्रिंग क्रिएट करते हैं इसे हम कह सकते हैं न्यू स्ट्रिंग इज इक्वल टू तो ये जो मेथड है ये उस वैल्यू को हमें रिटर्न करके देता है और उसे हम किसी वेरिएबल के अंदर स्टोर करा सकते हैं तो हम अपनी ओरिजिनल स्ट्रिंग को प्रिंट करवा सकते हैं और साथ के साथ हम अपनी न्यू स्ट्रिंग को प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया ये हमारी ओरिजिनल स्ट्रिंग थी एंड दिस वाज आवर न्यू स्ट्रिंग साथ के साथ व्हाट वी कैन डू इज इसी को अगर हम अपनी पुरानी स्ट्रिंग वेरिएबल के अंदर सेव कर ले एसआर = एआर ड अपर केस तो उस केस में हमारी स्ट्रिंग जो है वो चेंज हो जाएगी रिफ्रेश किया तो इस केस में सारी चीजें हमारे पास अपर केस में होके आएंगी अब ओरिजिनल स्ट्रिंग के अंदर कभी भी चेंज क्यों नहीं होता क्योंकि जावास्क्रिप्ट के अंदर जो स्ट्रिंग्स होती हैं स्ट्रिंग्स आर इ म्यूटेशंस चेंज नहीं होती तो स्ट्रिंग्स के अंदर जावास्क्रिप्ट में कोई भी चेंज नहीं आता अगर आपको छोटी से छोटी चीज किसी कैरेक्टर को मान लो हमने ए बी सी लिखा है इसको अगर आपको ए बी सी भी बनाना है तो भी आपको एक नई स्ट्रिंग क्रिएट करनी पड़ेगी विद द न्यू चेंज कभी भी पुरानी ओरिजिनल स्ट्रिंग के अंदर चेंज नहीं आता हमेशा जब भी कोई भी चेंज आएगा हमेशा नई स्ट्रिंग क्रिएट होगी तो आपसे इंटरव्यूज के अंदर पूछा जा सकता है कि जावास्क्रिप्ट की जो स्ट्रिंग्स होती हैं वो इ म्यूटेशंस की जो वैल्यूज है वो लोअर केस के अंदर कन्वर्ट हो जाती हैं तो यहां पर हम लिख सकते हैं डॉट टू लोअर केस इसको सेव कर लेते हैं रिफ्रेश किया तो हमारे पास आ गई सारी की सारी वैल्यूज इन लोअर कैरेक्टर्स अब नेक्स्ट मेथड जिसको हम पढ़ेंगे वो होता है हमारा ट्रिम मेथड ट्रिम मेथड का काम होता है कि हमारी वाइट स्पेसेस को रिमूव करता है और कहां से रिमूव करता है यह स्टार्टिंग एंड एंड में जितनी भी वाइट स्पेसेस होती हैं हमारी स्ट्रिंग के अंदर उन सारी स्पेसेस को रिमूव करके हमें दे देगा फॉर एग्जांपल मैंने एक स्ट्रिंग बनाई उसके अंदर शुरुआत में कुछ खाली स्पेसेस हैं फिर मैंने लिखा ए बी c d और फिर लास्ट में कुछ खाली स्पेसेस दे दी तो इन स्पेसेस को रिमूव करने का काम हमारे लिए ट्रिम करता है जैसे यहां पर इफ आई क्रिएट माय स्ट्रिंग टू बी लाइक दिस शुरुआत में बहुत सारी स्पेस दे दी फिर मैंने लिखा अपना फिर मैंने बीच में एक स्पेस दी फिर मैंने लिखा लिखा कॉलेज फिर मैंने एक और स्पेस दी फिर लेट्स सपोज आई राइट जेएस एंड फिर लास्ट में भी बहुत सारी स्पेस दे दी अब यहां पर अगर मैं प्रिंट करवाऊं console.log एटम स ये सेव कर लेते हैं रिफ्रेश करते हैं तो जब हम अपनी स्ट्रिंग को प्रिंट करवाएंगे तो यहां पर हमारे लिए प्रिंट होगा अपना कॉलेज जेएस तो मतलब इसकी जो शुरुआत की हमारी स्पेसेस थी एंड लास्ट की जो स्पेसेस थी उनको ट्रिम मेथड हमारे लिए ट्रिम कर देता है बीच में जितनी भी स्पेसेस होती हैं चाहे वो एक स्पेस हो चाहे वो दो स्पेसेस हो या मल्टीपल स्पेसेस हो वो रह जाती है तो स्टार्टिंग एंड एंड से हमारी वाइट स्पेसेस को ट्रिम करके हमें देता है इसके अलावा हमारे पास और भी काफी मेथड्स होते हैं जिनको हम डे टू डे बेसिस पर यूज करते हैं अब ये जो जितने भी मेथड्स हैं जिनको हम डिस्कस कर रहे हैं इनको एज सच हमें मेमराइज नहीं करना होता जनरली जब हम कोड लिख रहे होंगे इनको हम बहुत बार लिख लेंगे तो हमें ये ऑटोमेटिक जो फ्रीक्वेंसी लिया तो वरना इसके अलावा भी स्ट्रिंग्स के अंदर बहुत सारे स्ट्रिंग मेथड्स होते हैं सारे के सारे हमें याद याद नहीं करने होते हैं और जनरली अगर आप लेट्स सपोज अगर आप कभी जावास्क्रिप्ट के अंदर कोडिंग कर रहे हो कभी आप किसी और लैंग्वेज के अंदर कोडिंग कर रहे हो तो जनरली हम क्या करते हैं हम अपने मेथड्स जो स्पेसिफिक स्ट्रिंग मेथड्स होते हैं वो याद नहीं रहते तो ऐसे केसेस में अगर आप कोई प्रोजेक्ट बिल्ड कर रहे हो कुछ और बिल्ड कर रहे हो जावास्क्रिप्ट के अंदर तो अगर आप भूल भी जाते हो तो कोई टेंशन की बात नहीं है आप कभी भी जाके उस चीज को ग कर सकते हो आपको स्ट्रिंग के अंदर कुछ चेंज लेके आना है आप सिंपली ग कर सकते हो कि स्ट्रिंग के अंदर ये वाला चेंज कैसे लेके आते हैं जावास्क्रिप्ट में तो देयर इज नथिंग रॉन्ग विद दैट जनरली जब हम बहुत सारी टेक्नोलॉजी सीख लेते हैं तो इस तरीके से ग करना इज द नॉर्म दिस इज अ नॉर्मल थिंग नेक्स्ट जिस मेथड की हम बात करेंगे यह है हमारा स्लाइस मेथड स्लाइस मेथड का काम होता है स्लाइस का मतलब होता है काटना कोई टुकड़ा दे देना तो स्लाइस मेथड हमें हमारी स्ट्रिंग का कोई टुकड़ा रिटर्न करके देता है फॉर एग्जांपल मैंने अपनी स्ट्रिंग लिखी ए बी सीडी e एज दिस इज माय स्ट्रिंग अब मुझे इस स्ट्रिंग का यहां से लेके यहां तक कोई टुकड़ा चाहिए तो उसके लिए क्या मेरी स्टार्टिंग पोजीशन होगी दिस विल बी बेसिकली माय स्टार्टिंग पोजीशन एंड क्या मेरी एंडिंग पोजीशन होगी पोजीशन या इसको हम इंडेक्स कह सकते हैं क्या मेरा स्टार्टिंग इंडेक्स होगा क्या मेरा एंडिंग इंडेक्स होगा वो हमें स्लाइस को बताना पड़ता है कि मुझे यहां से लेके यहां तक टुकड़ा चाहिए और यह जो एंडिंग इंडेक्स होता है दिस इज़ एन ऑप्शनल वैल्यू प्लस दिस इज़ नॉन इंक्लूसिव नॉन इंक्लूसिव मतलब स्ट्रिंग है हमारे पास ए बी सडी e इसके अंदर इंडेक्स है 0 1 2 3 4 तो अगर हम स्लाइस के अंदर स्टार्ट की वैल्यू जो है उसको पास करते हैं एज़ वन और एंडिंग वैल्यू जो है उसको पास करते हैं एज थ्री तो हम तो सोचेंगे वन से लेके थ्री तक हमें टुकड़ा मिल जाएगा बट यह जो थ्री है एंडिंग वैल्यू ये इंक्लूड नहीं होती तो इसीलिए हमारे पास जो टुकड़ा रिटर्न होके आएगा उसके अंदर सिर्फ वन से लेकर टू तक ही वैल्यूज होंगी यानी फाइनल आंसर हमारे पास b एंड c इस तरीके से रिटर्न होके आएगा तो इसीलिए एंडिंग वैल्यू नॉन इंक्लूसिव होती है तो इसका एक एग्जांपल देखते हैं फॉर एग्जांपल आई हैव दिस स्ट्रिंग कॉल्ड या स्ट्रिंग के अंदर एक बार हम नंबर्स ही लिख लेते हैं 0 1 2 3 4 5 6 इस तरीके से नंबर लिख लिया हमने अब स्ट्रिंग के अंदर हम स्लाइस करना चाहते हैं स्टार्टिंग इंडेक्स यहां पे इनफैक्ट कोड दिखा भी देगा स्टार्टिंग इंडेक्स क्या देना चाहते हैं आप एंडिंग इंडेक्स क्या देना चाहते हैं स्टार्टिंग के अंदर इफ आई पास द इंडेक्स वन कि मुझे वन से लेकर थ्री तक चाहिए तो उसके उसमें क्या प्रिंट करेगा वन एंड टू ही प्रिंट होगा थ्री क्या होता है थर्ड इंडेक्स क्या होता है नॉन इंक्लूसिव होता है तो इसने क्या किया इस इंडेक्स से शुरू किया और यहां तक गया अगर मैं कहूं मुझे वन से लेके या इसे थोड़ा ठीक कर लेते हैं 5 6 से होना चाहिए मुझे वन से लेके सिक्स तक चाहिए वैल्यूज तो क्या प्रिंट करेगा मेरे लिए प्रिंट करेगा 1 2 3 4 5 तो सिक्स वाला इंडेक्स क्या होगा नॉन इंक्लूसिव होगा इंक्लूड नहीं होगा होगा ऐसे ही अगर हम कोई स्ट्रिंग लिखते हैं लेट्स सपोज इफ आई राइट हेलो तो हेलो के अंदर मुझे चाहिए कैरेक्टर्स रो से लेके थ्री तक मुझे चाहिए तो एल तीन ही लेटर्स प्रिंट करवाएगा ये रो इंडेक्स था ये वन इंडेक्स था ये टू इंडेक्स था थर्ड वाले इंडेक्स को इंक्लूड नहीं करेगा और किसी भी केस में लेट्स सपोज अगर हम वन से थ्री तक करते हैं तो ये ल प्रिंट करवा देगा और ये जो हमारी एंडिंग है एंडिंग वाला जो हमारा कैरेक्टर है ये हमारे पास ऑप्शनल होता है इसको अगर हम हटा भी देंगे तो बाय डिफॉल्ट क्या करेगा इस इस इंडेक्स से स्टार्ट करेगा और लास्ट तक जितनी भी स्ट्रिंग बनेगी उसे प्रिंट करवा देगा रिफ्रेश किया एलो प्रिंट करवा दिया टू से स्टार्ट करेंगे तो डबल एओ प्रिंट करवा दिया थ्री से स्टार्ट करेंगे तो सिंगल एओ प्रिंट करवा दिया तो इस तरीके से स्ट्रिंग का कोई भी टुकड़ा हमें रिटर्न करके देता है अगर हम कुछ भी पास नहीं करेंगे रिफ्रेश करेंगे तो हमें पूरी की पूरी स्ट्रिंग मिल जाती है पर जनरली जब भी हम स्लाइस करते हैं एटलीस्ट स्टार्टिंग इंडेक्स तो हमें पास करना ही करना चाहिए नेक्स्ट जिसके बारे में हम बात करेंगे नेक्स्ट मेथड होता है कॉन्कैटिनेट कॉन्कैटिनेट का मतलब होता है दो स्ट्रिंग्स को जोड़ना तो अगर हमें स्ट्रिंग वन को स्ट्रिंग टू के साथ जोड़ना है तो हम लिखते हैं स्ट्रिंग व डॉट ककट और फिर अपने पेंसिस और फिर हम अंदर स्ट्रिंग टू का नाम लिख देते हैं फॉर एग्जांपल मेरे पास दो स्ट्रिंग्स हैं लेट स्ट्रिंग वन स्ट्रिंग वन है मेरे पास अपना और एक है स्ट्रिंग टू स्ट्रिंग टू है कॉलेज अब मुझे पहले स्ट्रिंग वन चाहिए फिर मुझे स्ट्रिंग टू चाहिए दोनों को जोड़कर मुझे एक सिंगल स्ट्रिंग बनानी है तो उसके लिए हम लिख सकते हैं ए1 डॉट कॉन कैट पेंसिस और इसके अंदर हम पास कर देंगे अपनी स्ट्रिंग टू यह क्या करेगी हमें एक नई स्ट्रिंग रिटर्न करके देगी तो इस नई स्ट्रिंग को हम रिजल्ट कह देते हैं लेट आरस रिजल्ट इज इक्वल टू दिस और फिर हम प्रिंट करवा देंगे अपने रिजल्ट को सेव कर लेते हैं रिफ्रेश करते हैं तो रिजल्ट के अंदर क्या आया रिजल्ट के अंदर आया अपना कॉलेज यहीं पर अगर हम स्ट्रिंग टू को पहले लिख देते स्ट्रिंग वन को बाद में लिख देते तो जो चीज पहले लिखते हैं वह पहले आ जाएगी तो कॉलेज पहले आएगा एंड फिर हमारे पास अपना आएगा इसमें एक और चीज जो स्ट्रिंग कॉन्कैटिनेट हो होती है जनरली जावास्क्रिप्ट के अंदर सिर्फ प्लस लिखकर भी हम स्ट्रिंग्स को कंकट निट कर सकते हैं यानी अगर मैंने लिख दिया एसआर 1 + एसआर 2 सेव कर लेते हैं रिफ्रेश करते हैं तो भी कॉन्कैटिनेट हो जाएगा तो कॉन्कैटिनेट के लिए स्ट्रिंग का मेथड भी होता है प्लस स्ट्रिंग्स के बीच में आप प्लस लिख के भी स्ट्रिंग कॉन्कैटिनेट कर सकते हो मल्टीपल स्ट्रिंग्स को भी कंकट ट कर सकते हैं मैंने लिख दिया यहां पर आई एम लर्निंग कोडिंग फ्रॉम इस तरीके का कुछ मैंने लिख दिया आई एम लर्निंग कोडिंग फ्रॉम अपना कॉलेज तो ये क्या हो गई तीन स्ट्रिंग्स हो गई ये मेरी एक स्ट्रिंग है ये मेरी सेकंड स्ट्रिंग है ये मेरी थर्ड स्ट्रिंग है सेव किया रिफ्रेश किया तो एक कंप्लीट जो है हमारे पास टोटल सिंगल स्ट्रिंग रिटर्न होकर आ गई तो जो फर्स्ट लेक्चर के अंदर मैंने आपको दिखाया था कि दो स्ट्रिंग्स को हम ऐसे भी जोड़ सकते हैं अगर मैंने लिखा हेलो और प्लस कर दिया मैंने 1 2 3 तो हेलो 1 2 3 हमारे पास प्रिंट होके आ जाएगा ये क्या है ये भी स्ट्रिंग कॉन्कैटिनेट ही होता है दो स्ट्रिंग्स को जोड़ना तो यहां पे नंबर स्ट्रिंग के साथ जुड़ जाता है क्योंकि इंटरनली जावास्क्रिप्ट उसे स्ट्रिंग के अंदर कन्वर्ट करके फिर स्ट्रिंग के साथ कंकट ट कर देता है नेक्स्ट मेथड जिसकी हम बात करेंगे दिस इज माय रिप्लेस मेथड रिप्लेस मेथड स्ट्रिंग के अंदर किसी वैल्यू को सर्च करने के काम आता है फॉर एग्जांपल मैंने कोई स्ट्रिंग लिखी ए बी सीडी e एज ए इसके अंदर मुझे सर्च करनी है अपनी वैल्यू e तो इस वैल्यू को सर्च करके अगर इसकी जगह हम 1 2 3 कुछ भी लिखना चाहते हैं तो उसके लिए हम दो पैरामीटर्स पास करते हैं मतलब दो वैल्यूज पास करते हैं हम लिखेंगे अपनी स्ट्रिंग का नाम डॉट रिप्लेस जिस भी वैल्यू को सर्च करके हम नई वैल्यू के साथ रिप्लेस करना चाहते हैं तो अपनी सर्च वैल्यू पास करते हैं और न्यू वैल्यू पास करते हैं तो यहां पर एग्जांपल के लिए एक स्ट्रिंग ले लेते हैं लेट स्ट्रिंग इज इक्वल टू हेलो हेलो हमारे पास स्ट्रिंग है और हम चाहते हैं कि स्ट्रिंग के अंदर कसोल डॉट लॉग कर लेते हैं इस स्ट्रिंग के अंदर हम रिप्लेस करना चाहते हैं अपने एच को वा के साथ हेलो को हम येलो बनाना चाहते हैं सेव कर लिया रिफ्रेश किया तो हमारे पास फाइनल स्ट्रिंग क्या आ गई हमारे पास फाइनल स्ट्रिंग आ गई रिटर्न होके येलो हम h को अगर ए के साथ रिप्लेस करते तो इट वुड हैव बीन मेलो अगर हम लेट्स सपोज एल को ही कंप्लीट रिप्लेस करना चाहते हैं या जो ये एओ है इस एओ को मुझे p से रिप्लेस करना है तो इसको हटा के मुझे हेल्प बनाना है अपने स्ट्रिंग को सेव कर लिया रिफ्रेश कर लिया तो हमारे पास हेल्प आ जाएगा तो इस तरीके से किसी भी मैचिंग कैरेक्टर को हम किसी भी दूसरी वैल्यू के साथ रिप्लेस कर सकते हैं और अगर यहां पे एओ एओ तीन बार होता तो उस केस में हमारे पास सिर्फ जो फर्स्ट मैचिंग चीज है है फर्स्ट टाइम जब एओ मैच करेगा तो रिप्लेस होगा यानी सिर्फ एक ही बार रिप्लेसमेंट होगी बार-बार रिप्लेसमेंट नहीं होगी रिप्लेस ऑल हमारे पास एक चीज होती है जिससे क्या होगी हर बार रिप्लेसमेंट हो जाएगी तो रिप्लेस से एक बार पहली बार जब हमारी जो सर्च वैल्यू होती है वो मैच करती है तब रिप्लेस होगा रिप्लेस ऑल से सारी की सारी मैचिंग वैल्यूज रिप्लेस हो जाएंगी एंड लास्ट मेथड जिसके बारे में हम पढ़ रहे होंगे दैट इज़ द कैरेक्टर एट मेथड स्ट्रिंग के अंदर अगर किसी भी इंडेक्स पे कोई कैरेक्टर अगर हमें फाइंड आउट करना है रिटर्न करवाना है तो उसके लिए हम लिखते हैं स्ट्रिंग डॉट र एट और फिर पेंसिस के अंदर हम अपने इंडेक्स की वैल्यू लिखते हैं जसे फॉर एपल मेरे पास स्ट्रिंग है आई लव जावास्क्रिप्ट इस तरीके की कुछ स्ट्रिंग है हमारे पास इसके अंदर हम जानना चाह रहे हैं कि स्ट्रिंग के अंदर कैरेक्टर एट इंडेक्स जीरो क्या है जीरो इंडेक्स प कौन सा कैरेक्टर है हमें पता है हमारे पास कैरेक्टर आ है रिफ्रेश करेंगे तो आई प्रिंट होके आएगा थर्ड इंडेक्स में कौन सा कैरेक्टर है कैरेक्टर ओ है रिफ्रेश करेंगे ओके ओके दिस इ सेकंड इंडेक्स ट सेकंड इंडेक्स पर ओ है रिफ्रेश करेंगे ओ प्रिंट होके आएगा थर्ड इंडेक्स पर हमारे पास व है ओ के बाद तो हमारे पास व प्रिंट होके आएगा तो इस तरीके से किसी भी इंडेक्स का अगर हमें कैरेक्टर सर्च करना होता है तो उसके लिए सिंपली नीड टू यूज द कैर एट मेथड ऑफ स्ट्रिंग्स अब साथ में एक छोटी सी चीज मैं आपको दिखाना चाहती हूं फॉर एग्जांपल यहां पर यह जो आ है इस आ को मुझे किसी और लेटर की जगह चेंज करना है मैं बेसिकली लिखना चाहती हूं स्ट्रिंग ऑफ जीरो को जैसे मुझे पता है स्ट्रिंग ऑफ जीरो की अगर वैल्यू प्रिंट करवानी है तो हम स्ट्रिंग ऑफ जीरो को इस तरीके से लिख सकते हैं तो हमारे पास आ प्रिंट हो जाएगा रिफ्रेश किया आई प्रिंट हो गया अब मुझे अगर इसकी वैल्यू चेंज करनी है तो हमारे दिमाग में आ सकता है कि हम सिंपली क्या करेंगे स्ट्रिंग ऑफ जीरो को हम लेट्स सपोज आई विल मेक इट ए ए बना दिया मैंने एंड फिर अपनी स्ट्रिंग को हम प्रिंट करवाएंगे तो अब हमें अज्यू करना चाहिए ए लव जेएस इस तरीके का कुछ प्रिंट होके आएगा हमारे पास बट एक्चुअली ऐसा नहीं होता एक्चुअली हमारी जो ओरिजिनल स्ट्रिंग है उसके अंदर चेंज नहीं आएगा और उसका रीजन वही है उसका रीजन यह है ओरिजिनल स्ट्रिंग इ म्यूटेशन नई स्ट्रिंग को जनरेट करना पड़ेगा तो अगर यह काम मुझे करना है तो उसके लिए हम रिप्लेस मेथड को यूज करेंगे यानी मैं सिंपली यहां पे लिखूंगी एसआर = एसआर ड रिप्लेस रिप्लेस के अंदर हम पास करेंगे कि मुझे i को रिप्लेस करना है s के साथ तब जाके जो फाइ आउटपुट है वो एस लव जेएस इस तरीके का कुछ बन पाएगा तो हम स्ट्रिंग मेथड्स को हम हमेशा यूज़ करते हैं डायरेक्टली किसी भी इंडेक्स पे जाके हम वैल्यू को मैनिपुलेट नहीं कर सकते अब आई अंडरस्टैंड कि स्ट्रिंग मेथड्स के बारे में हमने बहुत सारी चीजें सीख ली हैं और ये एक साथ बहुत सारा कंफ्यूज लग सकता है फर्स्ट टाइम स्ट्रिंग्स के बारे में पढ़ रहे हैं तो इतनी सारी चीजें हो गई हमारे पास याद करने के लिए एक चीज आपको करनी है साथ के साथ हम नोट्स बना सकते हैं अपने नोट्स के अंदर ये सारे मेथड्स हमें लिख लेने हैं पर एट दी एंड जब हम प्रोजेक्ट्स बना रहे होंगे तो इवेंचर हमें अगर कुछ चीज नहीं आती तो मैंने ऑलरेडी बता दिया हम सर्च भी कर सकते हैं तो ज्यादा स्ट्रेस नहीं लेना कि सारी चीजें एक साथ याद करनी है धीरे-धीरे प्रैक्टिस के साथ चीजें हमें याद होती चली जाएंगी अब नेक्स्ट हम सॉल्व करने वाले हैं स्ट्रिंग से रिलेटेड अपना एक प्रैक्टिस क्वेश्चन प्रैक्टिस क्वेश्चन के अंदर हमें प्रोमट करना है यूजर को टू एंटर देयर फुल नेम यानी प्रोमट क्रिएट करना है और यूजर को बोलना है अपना फुल नेम एंटर करो और उस फुल नेम को यूज करके हमें एक यूजर नेम जनरेट करना है उस यूजर के लिए तो उसको अज्यू कर सकते हैं कि हम कोई वेबसाइट बना रहे हैं टू जनरेट अ यूजर नेम हमें क्या करना है हमारा जो यूजर नेम है हमेशा रेट के साथ स्टार्ट होना चाहिए उसके बाद यूजर नेम के अंदर फुल नेम आना चाहिए जो भी यूजर ने जनरेट किया है एंड फिर फाइनली हमारे पास जो फुल नेम की लेंथ है वो क्रिएट होके आनी चाहिए जैसे यहां पे एग्जांपल है कि अगर यूजर ने अपना नेम एंटर किया श्रद्धा खाप तो यूजर नेम होना चाहिए रेट फिर पूरा नाम श्रद्धा खाप एंड लास्ट में उसकी लेंथ तो लेंथ ऑफ दिस स्ट्रिंग इज इक्वल टू 13 तो लास्ट में हमने उसे अपेंड कर दिया है या एक तरीके से कह सकते हैं कंकट कर दिया है तो इस तरीके से हमें अपने एक यूजर नेम को जनरेट करना है अब यहां पे एक बार पॉज करना है लेक्चर को खुद से इस सवाल को हमें सॉल्व करने की कोशिश करनी है जितने भी हमने मेथड्स पढ़े हैं जितने भी हमने प्रॉपर्टीज पढ़ी है उनको एक बार रिवाइज करना है देख लेना है और फिर उनसे इसको सॉल्व करने की कोशिश करनी है अगर हमें याद नहीं है मेथड्स एंड प्रॉपर्टीज कोई बात नहीं थोड़ा सा रिवाइंड करके दोबारा देख लेना है देख हम सकते हैं पर लॉजिक अपना खुद का लगाना है सॉल्व करने के लिए और अब हम सॉल्व करने की तरफ बढ़ते हैं तो बेसिकली सोचते हैं क्या-क्या चीजें हमें चाहिए सबसे पहला तो यूजर हमें कोई फुल नेम एंटर करके देगा एक चीज़ इंश्योर करनी है यूज़र जो फुल नेम एंटर करे उसके अंदर स्पेसेस नहीं होने चाहिए तो हम जो एंटर करेंगे फुल नेम उसके अंदर स्पेसेस नहीं होंगे अब यूज़र ने जो भी फुल नेम एंटर किया हमें उससे एक यूज़र नेम नाम की नई स्ट्रिंग बनानी है जिसके अंदर शुरू में हम रेट लिख देंगे प्लस हमारा जो फुल नेम यूज़र ने एंटर किया था उस फुल नेम की हम वैल्यू जो है उसको कंकट कर सकते हैं प्लस लिख के एंड दोबारा प्लस लिख के लास्ट में हम क्या कंकट ट कर देंगे तीन चीज़ें हमें चाहिए @ है @ जोड़ दिया हमने अपनी स्ट्रिंग में में फुल नेम है फुल नेम जोड़ दिया हमने अपनी स्ट्रिंग में फिर हमें लेंथ जोड़नी है तो फिर हम कंकट कर देंगे फुल नेम डॉट लेंथ को तो बेसिकली यह हमारा फाइनल यूजर नेम बन जाएगा इस चीज को इंप्लीमेंट करने के लिए अपना कोड लिखते हैं सबसे पहले तो प्रोमट क्रिएट कर लेते हैं एंटर योर फुल नेम विदाउट स्पेसेस तो जो भी यूजर एंटर करेगा वो हम इस वेरिएबल के अंदर स्टोर कर लेंगे लेट फुल नेम इज इक्वल टू दिस वेरिएबल और फिर एक बार प्रिंट करवा लेते हैं अपने फुल नेम को जो भी फुल नेम हमारे पास आता है सेव रिफ्रेश इस बार एंटर करते हैं श्रद्धा खपरा एंटर किया ओके यह हमारे पास फुल नेम था रिफ्रेश किया इफ आई डिसाइड टू एंटर अमन द तरवाल एंटर किया तो यह हमारे पास नाम आ गया अब हमें अपना यूजर नेम क्रिएट करना हैसे तो लेट यूजर नेम इज इक्वल टू सबसे पहले तो हम रेट लिखेंगे प्लस फुल नेम हम चा तो ककट मेथड को भी यूज कर सकते हैं तो अभी के लिए हाफ यूजर नेम क्रिएट करते हैं रिफ्रेश किया मैंने एंटर किया श्रद्धा ओके तो ये मेरा यूजर नेम आ गया रिफ्रेश किया मैंने एंटर किया अमन तवाल तो यह मेरा यूजर नेम आ गया तो इस तरीके से इतना यूजर नेम हमारे पास आ रहा है हम चाहे तो डॉट कनट भी लिख सकते हैं और लास्ट में हमें क्या ऐड करना है लास्ट में हमें ऐड करना है फुल नेम डॉट लेंथ को इसको सेव कर लेते हैं रिफ्रेश किया इस बार इफ आई राइट श्रद्धा खाप एंटर किया रेट श्रद्धा खारा 13 रिफ्रेश किया इफ आई एंटर अमन द तरवाल एंटर किया @ अमन द तरवाल 14 रिफ्रेश किया इफ माय फुल नेम इज़ अपना कॉलेज एंटर किया @ अपना कॉलेज 11 तो हमारे लिए हमारा जो यूज़र नेम है यह ऑटोमेटिक जनरेट होके आ रहा है तो इस तरीके से हम अपनी स्ट्रिंग्स को यूज़ कर सकते हैं टू बिल्ड इंटरेस्टिंग थिंग्स इन आवर कोड एंड आई होप कि जावास्क्रिप्ट के अंदर ऑल दो लूप्स वाला कॉन्सेप्ट शुरुआत जब करते हैं स्ट्रिंग्स वाला कॉन्सेप्ट शुरुआत में डिफिकल्ट लग सकता है बट कोई बात नहीं धीरे-धीरे इन कॉन्सेप्ट्स की हम प्रैक्टिस करते चले जाएंगे बार-बार इन चीज़ों को जब हम देखेंगे बार-बार जब कोड को लिख रहे होंगे तो हमें ऑटोमेटिक चीजें याद होनी स्टार्ट हो जाएंगी इसके अलावा अगर आपको और डिटेल में स्ट्रिंग्स मेथड को पढ़ना है तो मैंने रिसोर्स आपको लास्ट क्लास में भी बताया था कि हम एमडीएन को जाके एक्सप्लोर कर सकते हैं एमडीएन के अंदर हम सर्च कर सकते हैं अबाउट स्ट्रिंग मेथड्स तो स्ट्रिंग के अंदर यूजफुल स्ट्रिंग मेथड्स वाला एक पेज होगा इसके अंदर बहुत सारे डिफरेंट डिफरेंट मेथड्स होप फुली हमें यहां पर मिल जाएंगे जैसे रिप्लेस ऑल यहां पर लिखा हुआ है रिप्लेस मेथड लिखा हुआ है हमने इसे ऑलरेडी लिया है टू लोअर केस अपर केस को हम पढ़ चुके हैं स्लाइस को हम पढ़ चुके हैं तो काफी इंपॉर्टेंट जो मेथड्स है ये इंडेक्स ऑफ इसको आप जाके पढ़ सकते हो इंडेक्स ऑफ किस लिए यूज हो रहा है एंड्स विद किस लिए यूज होता है स्टार्टस विद किस लिए यूज होता है तो बहुत सारे डिफरेंट डिफरेंट स्ट्रिंग के मेथड्स हैं यूजफुल स्ट्रिंग मेथड्स जिनको हम जाके पढ़ सकते हैं एज अ होमवर्क प्रॉब्लम और उनको एक बार लिख लिख के ट्राई करेंगे तो हमारी खुद की भी प्रैक्टिस होती रहेगी हाय एवरीवन और अब हम शुरुआत करने वाले हैं अपने चैप्टर फोर के साथ जिसके अंदर हम पढ़ेंगे अपने अरेज के बारे में डिटेल में अब जब भी हम अरेज की बात करते हैं जावास्क्रिप्ट के अंदर एरे इज अ कलेक्शन ऑफ आइटम्स अभी तक हमने ऑलरेडी एक और कलेक्शन ऑफ आइटम की बात की है जिसके अंदर हमने ऑब्जेक्ट्स की बात की थी हमने देखा था कि अगर मुझे किसी स्टूडेंट की इंफॉर्मेशन सेव करवानी है फॉर एग्जांपल किसी स्टूडेंट के लिए नेम सेव करवाना है उसकी एज स्टोर करानी है उसकी सिटी का नाम स्टोर कराना है उसकी सीजीपी स्टोर करानी है तो इस तरीके की जो रिलेटेड इंफॉर्मेशन है उसे हम एक स्टूडेंट नाम की ऑब्जेक्ट के अंदर स्टोर करा सकते हैं अब यहीं से मिलता जुलता एक और सवाल मैं आपसे पूछती हूं अज्यू करते हैं कि मुझे मेरी एक क्लास है आई हैव अ क्लास ऑफ स्टू और उस क्लास के अंदर पांच स्टूडेंट्स हैं और मुझे इन पांच स्टूडेंट्स के मार्क्स स्टोर कराने हैं एक स्टूडेंट के मार्क्स आए हैं लेट्स सपोज 97 एक के मार्क्स आए हैं 82 एक के मार्क्स आए हैं 76 एक के मार्क्स आए हैं 65 एक के मार्क्स आए हैं 54 इस तरीके से पांच स्टूडेंट्स ने अलग-अलग मार्क्स स्टोर कि है इन मार्क्स को हम किस तरीके से स्टोर करा सकते हैं सबसे पहला सबसे बेसिक तरीका जो हमारे दिमाग में हिट करता है इसे कोड के अंदर लिखने की कोशिश करते हैं कोड सेटअप के लिए ऑलरेडी जावास्क्रिप्ट का हमारा फोल्डर था जिसके अंदर हमने इक्ड प्लेट कोड जो है उसको जनरेट कर रखा है script.js हमारी जावास्क्रिप्ट फाइल है जिसको हमने अटैच कर रखा है एंड script.js के अंदर हम अपना जावास्क्रिप्ट का कोड लिख सकते हैं सेम फाइल को हमने अपने ब्राउजर के अंदर खोला हुआ है इंस्पेक्ट करके कंसोल विंडो के अंदर ऑलरेडी हमें ये सारी चीजें ऑलरेडी हमें पता है जावास्क्रिप्ट के अंदर कैसे काम करती है अब बात करते हैं अरेज के बारे में अब script.js के अंदर लेट्स सपोज मुझे पांच स्टूडेंट्स के मार्क्स स्टोर करने हैं तो सबसे पहली अप्रोच होगी कि हम पांच अलग-अलग वेरिएबल बना ले हम इसे बोलेंगे मार्क वन या मार्क्स ऑफ स्टूडेंट वन इसे मार्क्स ऑफ स्टूडेंट वन हम लिख सकते हैं इनके हम मार्क्स स्टोर कर लेंगे लेट्स कॉल इट 97 ये हमारा फर्स्ट वेरिएबल हो गया इसी तरीके से हम अपना सेकंड वेरिएबल बना सकते हैं जिसमें स्टूडेंट टू के मार्क्स स्टोर कराएंगे इसके लिए हम लिख लेते हैं 82 एंड इसी तरीके से हम पांच अलग-अलग वेरिएबल बना लेंगे अब लेट्स अज्यू कल को क्लास के अंदर 10 नए बच्चे आ जाते हैं या 50 नए बच्चे आ जाते हैं कल को क्लास का साइज बड़ा हो जाता है तो ये अप्रोच बिल्कुल भी प्रैक्टिकल नहीं है क्यों क्योंकि इसके अंदर हमें बहुत सारे वेरिएबल बनाने पड़ेंगे और हर वेरिएबल का अलग से ट्रैक रखना पड़ेगा अब दूसरा केस हमारे पास हो सकता है कि हम मार्क्स नाम के एक ऑब्जेक्ट बना लें सो व्हाट वी कैन डू इज़ वी कैन क्रिएट एन ऑब्जेक्ट इसको हम मार्क्स कह देते हैं और हमें पता है ऑब्जेक्ट के अंदर क्या होता है की वैल्यू पेयर्स होते हैं पहले हो सकता है हम कोई की ऐड कर दें इसको कह देते हैं स्टूडेंट वन हमारी की हो जाएगी उसके अंदर 97 मार्क्स स्टोर करा देंगे स्टूडेंट टू हमारी की हो जाएगी उसके अंदर 82 मार्क स्टोर करा देंगे इस तरीके से तो स्टूडेंट वन की हो जाएगी 97 मार्क्स स्टोर करा दिए स्टूडेंट टू की हो जाएगी 82 मार्क्स स्टोर करा दिए तो इस तरीके से हम अलग-अलग स्टूडेंट्स के जो हैं मार्क्स स्टोर कराते चले जाएंगे इसमें अब इस तरीके से भी हम अपने स्टूडेंट्स के मार्क्स स्टोर करा सकते हैं पर ये उतना अच्छा तरीका नहीं है उतना अच्छा तरीका इसलिए नहीं है क्योंकि यहां पे स्टूडेंट वन स्टूडेंट टू स्टूडेंट थ्री इस तरीके से जो इंफॉर्मेशन है जो नाम है वो एक तरीके से रिपीट ही हो रहे हैं मतलब हमें पता ही है हमेशा हर जो मार्क्स हम स्टोर करा रहे हैं वो पहले स्टूडेंट वन के ही कराएंगे फिर टू के ही कराएंगे फिर थ्री के ही कराएंगे फिर फोर के ही कराएंगे तो मार्क्स जो है ऑब्जेक्ट की फॉर्म में भी स्टोर कराए जा सकते हैं पर वो प्रोग्रामिंग के अंदर उतना अच्छा तरीका नहीं होता जनरली जब हम रिलेटेड इंफॉर्मेशन को जो सेम टाइप की इंफॉर्मेशन है उसको स्टोर कराते हैं तो उनके लिए हम कलेक्शन की फॉर्म में अरेज के अंदर इंफॉर्मेशन स्टोर कराना प्रेफर करते हैं और अरेज क्या होता है अरेज इंफॉर्मेशन को स्टोर कराने का एक लीनियर तरीका होता है लीनियर कहने का मतलब है कि जब भी हम एरे को इमेजिन करेंगे एरे को हम इस तरीके से एक सिंगल लाइन के अंदर इमेजिन करेंगे कि यहां पे एक बॉक्स है बॉक्स के अंदर हमारी फर्स्ट इंफॉर्मेशन आ जाएगी फिर सेकंड इंफॉर्मेशन आ जाएगी थर्ड इंफॉर्मेशन आ जाएगी फोर्थ आ जाएगी फिफ्थ आ जाएगी सिक्स्थ आ जाएगी सेवंथ आ जाएगी और जैसे ऑब्जेक्ट के अंदर हर की को मुझे अलग नाम देना पड़ता है जैसे यहां स्टूडेंट वन को अलग नाम देना पड़ा स्टूडेंट टू को अलग नाम देना पड़ा तो यहां भी हमें बहुत सारे नाम ट्रैक करने पड़ेंगे पर ये जो हमारा एरे है एरे को हमें एक ही नाम देना पड़ता है जैसे इस एरे को मैंने कह दिया ये मेरा मार्क्स एरे है तो इसे मुझे एक ही नाम देना पड़ा मार्क्स अब मार्क्स के अंदर मुझे पता है कि मार्क्स के अंदर ये वाली इंफॉर्मेशन भी स्टोर्ड है फर्स्ट पोजीशन पे ये वाली इंफॉर्मेशन स्टोर्ड है सेकंड पोजीशन पे ये वाली इंफॉर्मेशन थर्ड पोजीशन पे ये वाली इंफॉर्मेशन फोर्थ पोजीशन पे तो इस तरीके से एरे के अंदर पोजीशन मैटर करती है एज सच ऑब्जेक्ट के अंदर जैसे की का नाम मैटर करता है यहां पे नाम मैटर नहीं करता यहां पे पोजीशन मैटर करती है या पोजीशन के बारे में हमने ऑलरेडी एक बात सीखी थी पोजीशन को हम इंडेक्स कहते हैं इंडेक्स मैटर करता है एरे के अंदर तो इस तरीके की जो इंफॉर्मेशन है जिसमें हमें सेम टाइप की इंफॉर्मेशन का कलेक्शन बनाना होता है उसके लिए इंफॉर्मेशन को स्टोर कराने के लिए हम अपने एरे को यूज़ करते हैं अब एरे को हम क्रिएट कैसे करेंगे एरे को क्रिएट करने के लिए हम सिंपली लिखते हैं अपने एरे का नाम लेट एरे भी लिख सकते हैं कॉन्स्ट एरे भी लिख सकते हैं इज इक्वल टू और फिर राइट साइड में हम अपने स्क्वायर ब्रैकेट्स को यूज़ करते हैं और स्क्वायर ब्रैकेट्स के अंदर फिर हम एक-एक करके अपने आइटम्स को लिख देते हैं बाय सेपरेटिंग देम विद अ कॉमा जैसे ऑब्जेक्ट के अंदर ये हमारा फर्स्ट एलिमेंट हो गया कॉमा सेकंड एलिमेंट हो गया कॉमा पर यहां पे की वैल्यू पेयर होता है एरे के अंदर पेयर नहीं होता एरे के अंदर सिंगल वैल्यू होती है एरे के अंदर कोई कीज नहीं होती तो यहां पे फर्स्ट आइटम हो गया ये सेकंड आइटम हो गया ये थर्ड आइटम हो गया ये हमारा फोर्थ आइटम हो गया इसी तरीके से मुझे मार्क्स का एरे बनाना है तो ये मैंने सारे के सारे मार्क्स का एरे बना लिया अब एरे इस के अंदर हम अलग-अलग टाइप की इंफॉर्मेशन भी हम स्टोर कर सकते हैं जैसे एक सिंगल एरे के अंदर हम स्ट्रिंग भी ऐड कर सकते हैं तो हम नंबर भी ऐड कर सकते हैं तो हम वूलिन भी ऐड कर सकते हैं पर जनरली इस तरीके से हम एरे बनाना प्रेफर नहीं करते हम जनरली सेम टाइप की इंफॉर्मेशन का एरे बनाना प्रेफर करते हैं पर हम चाहे तो ऐसे भी बना सकते हैं जावास्क्रिप्ट में अब अपने सैंपल एरे को एक बार क्रिएट करके देखते हैं लेट्स सपोज मुझे अपने मार्क्स का एरे बनाना है तो मैं लिखूंगी लेट मार्क्स इज इक्वल टू और इसमें सारे मार्क्स आ जाएंगे 97 आ जाएगा 82 आ जाएगा 75 आ जाएगा 64 आ जाएगा वी कैन आल्सो हैव 36 तो इस तरीके से अलग-अलग मार्क्स की इंफॉर्मेशन हमारे पास आ गई तो ये हो गया हमारा एरे हम चाहे तो इसे लॉग भी करा सकते हैं आई कैन राइट कलॉग मेरा मार्क्स वाला एरे इसको कर लेते हैं सेव एंड रिफ्रेश तो ये हमारा मार्क्स वाला एरे आ गया एरे का साइज हमें दिखाई दे रहा है पहले किस साइज का एरे है फाइव साइज का एरे है इसे एक्सपेंड कर सकते हैं अब हमारी पोजीशन जरो पे यानी इंडेक्स रो पे 97 है वैल्यू इंडेक्स वन पे 82 है वैल्यू इंडेक्स टू पे 75 है इंडेक्स थ्री पे ये है इंडेक्स फोर पे ये है और लेंथ भी साथ के साथ हमारे पास है तो जो हमारा एरे होता है जनरली अरेज को हम उन सिचुएशन के लिए प्रेफर करते हैं जहां हम मल्टीपल आइटम्स का कलेक्शन बना के तो स्टोर करना चाहते हैं पर सारे आइटम्स को हम एक ही नाम देना चाहते हैं तो ऑब्जेक्ट के अंदर तो हर की को हमें अलग नाम देना पड़ता है पर एरे के अंदर सारे के सारे आइटम्स को हम एक सिंगल नाम के अंदर सिंगल अंब्रेला के अंदर स्टोर करके रख देते हैं अब ये जो एरे है एरे के अंदर हमारे पास लेंथ नाम की प्रॉपर्टी भी होती है तो जैसे हमारे पास स्ट्रिंग होती है हम स्ट्रिंग की लेंथ प्रिंट कर सकते हैं वैसे ही हम एरे की लेंथ भी प्रिंट कर सकते हैं जैसे इन द नेक्स्ट लाइन आई कैन चूज टू प्रिंट मार्क्स डॉट लेंथ तो इस तरीके से हम अपने एरे का नाम लिखते हैं डॉट लिखते हैं और हम लेंथ लिखते हैं ये जो लेंथ है ये हमारी प्रॉपर्टी होती है एरे के अंदर प्रॉपर्टीज और मेथड्स के बीच में डिफरेंसेस हमने पहली ही क्लास में बात कर ली है स्ट्रिंग्स के अंदर प्रॉपर्टी होती है जो बस कुछ वैल्यू दे देती है मेथड होता है जो कुछ काम करता है तो यहां पे लेंथ कुछ काम नहीं कर रही बस एक वैल्यू है जो स्टोर्ड है तो हर एरे के साथ उसकी लेंथ की प्रॉपर्टी स्टोर्ड होती है सेव कर लिया रिफ्रेश कर लिया हमारा ये एरे है और इसका साइज है फाइव के इक्वल तो इस तरीके से एरे की फॉर्म में कोई भी इंफॉर्मेशन स्टोर कराई जा सकती है हम चाहे तो एक स्ट्रिंग्स का एरे भी बना सकते हैं लेट्स मेक एन एरे कॉल्ड हीरोज हीरोज के अंदर हम अपने सुपर हीरोज के नाम स्टोर कर सकते हैं लेट्स स्टार्ट विद आयन मैन उसके बाद वी कैन हैव थॉर वी कैन हैव हल्क वी कैन कन हैव शक्तिमान वी कैन हैव स्पाइडरमैन इस तरीके से बहुत सारे डिफरेंट डिफरेंट नाम हम स्टोर कर सकते हैं और इस एरे को भी हम प्रिंट करवा सकते हैं कसोल डलॉग एंड वी कैन प्रिंट आवर हीरोज सेव रिफ्रेश तो ये हमारा पांच साइज का हीरोज वाला एरे जो है वो हमारे पास प्रिंट होकर आ गया साइज क्योंकि सेम आ रहा है वी कैन ऐड वन मोर एंट मैन सेव रिफ्रेश तो ये हमारे पास साइज इंक्रीज होकर आ गया एरे का एंड इस एरे की भी हम लेंथ को प्रिंट करवा सकते हैं तो ये तो हो गया अरेज के बारे में अब एक और इंटरेस्टिंग चीज हम देखने वाले हैं कि जब भी हम अरेज की बात करते हैं इफ आई इसे एक बार क्लियर कर लेते हैं कमांड के से लेट्स सपोज मैंने अपना मार्क्स वाला एरे प्रिंट करवाया अब मैं क्या करने वाली हूं अब मैं टाइप प्रिंट करवाने वाली हूं टाइप ऑफ मार्क्स और एक इंटरेस्टिंग चीज हम नोटिस करेंगे कि जो एरे होता है वो एरे अपने आप में कोई टाइप नहीं होता एरे खुद एक ऑब्जेक्ट टाइप होता है जब हमने डेटा टाइप्स की बात की थी दो टाइप के हमारे डेटा टाइप्स होते थे एक होते थे प्रिमिटिव यानी बेसिक डेटा टाइप्स एक होते हैं नॉन प्रिमिटिव एडवांस डेटा टाइप्स एडवांस डेटा टाइप्स के अंदर हमने ऑब्जेक्ट्स की बात की थी तो तो एरे क्या होता है तो एरे एक स्पेशल टाइप ऑफ ऑब्जेक्ट ही होती है एरे इंटरनली जावास्क्रिप्ट के अंदर एक ऑब्जेक्ट होती है तो उसके टाइप में आपको एरे प्रिंट हो के नहीं आएगा बट हां अरेज को ऑब्जेक्ट के कंपैरिजन में हम थोड़ा सा सेपरेटली ट्रीट करते हैं तो हम ये सोच सकते हैं कि एरे हमारी ऐसी ऑब्जेक्ट है जिसमें की वैल्यू पेयर तो होता है बट की की जगह हम अपने इंडेक्स को यूज करते हैं कि इंडेक्स जीरो पे ये की वैल्यू पेयर ही तो है एक तरीके से कि इंडेक्स जीरो पे वैल्यू 97 है इंडेक्स वन पे वैल्यू 82 है इंडेक्स टू पे वैल्यू 75 है तो इसको कह सकते हैं की ज़ीरो है वैल्यू 97 है की वन है वैल्यू 82 है की टू है वैल्यू 75 है तो यहां पे य ऐसी ऑब्जेक्ट है जिसके अंदर की की जगह हमारे पास इंडेक्स की वैल्यूज होती हैं एंड देयर इज आल्सो दिस फनी थिंग अबाउट जावास्क्रिप्ट व्हिच इज़ अ बेसिकली अ जोक कि जावास्क्रिप्ट के अंदर मैक्सिमम चीजें आपको नहीं पता कब क्या ऑब्जेक्ट निकल जाए तो काफी सारी इंटरेस्टिंग चीजें जावास्क्रिप्ट के अंदर आपको देखने को ऐसी मिलेंगी जिसके अंदर चीजें दे टर्न आउट टू बी ऑब्जेक्ट्स और दे बिहेव लाइक ऑब्जेक्ट्स व्हिच इज अ वियर्ड एंड आल्सो एन इंटरेस्टिंग पार्ट अबाउट जावास्क्रिप्ट एज अ लैंग्वेज तो ये तो हो गया अबाउट बेसिक्स ऑफ़ अरेज इसके साथ में नेक्स्ट हम बात करने वाले हैं अबाउट एरे इंडा इसस इंडा इसस यानी इंडेक्स की प्लूरल फॉर्म तो जैसे स्ट्रिंग के अंदर अगर हम कोई स्ट्रिंग क्रिएट करते हैं हेलो और अगर हम ये रो इथ इंडेक्स वाला आइटम एक्सेस करना चाहते हैं तो हम लिखते हैं स्ट्रिंग ऑफ़ ज़ीरो वैसे ही एरे के अंदर इंडेक्स के थ्रू आइटम्स एक्सेस करने के लिए हम लिखते हैं एरे का नाम एंड उसके बाद अपने स्क्वायर ब्रैकेट्स और फिर अपने इंडेक्स की पोजीशन तो फॉर एग्जांपल अगर हमने कोई अपना एरे क्रिएट किया है लेट्स सपोज हमने अपने मार्क्स के लिए एरे क्रिएट किया है मार्क्स में है ना 7 है 82 है 64 है 76 है 36 है इस तरीके से बहुत सारी वैल्यूज हैं अगर तो ये जो सारी की सारी वैल्यूज होती है ये हमारे एरे के अंदर कुछ इस तरीके से स्टोर होती है कि यहां हमारे पास 97 आ गया ये 82 आ गया ये 64 आ गया 76 आ गया 36 आ गया तो बेसिकली द वैल्यूज आर स्टोर्ड इन अ लीनियर फैशन लीनियर यानी सिंगल लाइन फैशन के अंदर वैल्यू स्टोर होती हैं और ये हमारा इंडेक्स रो हो जाएगा वन हो जाएगा टू हो जाएगा थ्री हो जाएगा फोर हो जाएगा और यहां इंडेक्स के बेसिस पे वैल्यूज एक्सेस करने के लिए अगर मुझे रोत वाले इंडेक्स की वैल्यू एक्सेस करनी है यानी ज़ीरो पोजीशन की तो मैं लिखूंगी एरे ऑफ़ ज़ीरो एरे ऑफ़ वन पे ये वैल्यू आ जाएगी टू पे ये वैल्यू आ जाएगी थ्री पे ये वैल्यू आ जाएगी इसको एक बार ट्राई करके देखते हैं लेट्स क्लियर द स्क्रीन ये हो गया हमारा मार्क्स वाला एरे अब मार्क्स एरे के अंदर ज़ीरो एथ इंडेक्स वाली वैल्यू को अगर हम प्रिंट करवाएं तो वी कैन राइट मार्क्सस ऑफ़ जीरो तो हमारे पास 97 आ जाएगा मार्क्स ऑफ़ वन में हमारे पास 82 आ जाएगा मार्क्स ऑफ़ टू में हमारे पास 75 आ जाएगा एंड इस तरीके से वैल्यूज आ जाएंगी अब क्योंकि ये एरे हमारे पास पांच ही साइज का है तो लेट्स ट्राई टू प्रिंट मार्क्स ऑफ फाइव अब मार्क्स ऑफ़ फाइव एज सच इंडेक्स एजिस्ट नहीं करता इंडेक्स कहां से कहां तक जाते हैं रो से फर तक जाते हैं तो मार्क्स ऑफ़ फाइव को जब हम प्रिंट करवाएंगे तो वह हमारे लिए आएगा अनडिफाइंड हम मार्क्स ऑफ 100 को प्रिंट करवाएंगे तो वो भी हमारे लिए आएगा तो इस तरीके से जब हम वो इंडेक्स एक्सेस करने की कोशिश करते हैं जो एरे के अंदर एजिस्ट ही नहीं करता तो हमारे पास अनडिफाइंड प्रिंट होके आता है आल्सो अगर हमें कभी भी जाके एरे की वैल्यूज को चेंज करना होता है तो हम उन्हें भी जाके चेंज कर सकते हैं सिंपली किसी भी इंडेक्स पे जाके अगर मुझे वैल्यू को चेंज करना है फॉर एग्जांपल 64 की जगह हम 66 करना चाहते हैं तो हम सिंपली क्या कर सकते हैं हम लिख सकते हैं एरे ऑफ जो भी इसका इंडेक्स है 0 1 2 इसका इंडेक्स है 2 तो एरे ऑफ 2 = 66 इस तरीके से जैसे ही हम कर देंगे तो मेमोरी के अंदर ये 64 हट के यहां पे वैल्यू हो जाएगी 66 के इक्वल दिस थिंग इज आल्सो पॉसिबल सो इफ आई मेक एरे ऑफ या एक बार मार्क्स को प्रिंट करवाते हैं ये हमारे मार्क्स हो गए अब मार्क्स में 97 की जगह मार्क्स ऑफ रो को मुझे कन्वर्ट करना है टू 66 एंटर किया तो इस बार मार्क्स की वैल्यू क्या हो गई मार्क्स की वैल्यू हो गई 60 6 के इक्वल तो ये चीज कंप्लीट कर पाना पॉसिबल है अरेज के केस में ये चीज हम स्ट्रिंग्स में नहीं कर सकते स्ट्रिंग्स में अगर हमने कोई स्ट्रिंग बनाई हेलो इस तरीके से स्ट्रिंग बना ली अब मैं सोचूं स्ट्रिंग ऑफ ज़ीरो को मैं y बना दूं और अब स्ट्रिंग को प्रिंट करवाएं तो स्ट्रिंग के अंदर चेंज नहीं आएगा स्ट्रिंग हेलो की हेलो ही रहेगी इसका रीजन यह होता है जिसके बारे में लास्ट लेक्चर के अंदर भी हमने बात की थी कि हमारी जो स्ट्रिंग्स होती हैं वो जावास्क्रिप्ट के अंदर इ होती हैं उन्हें चेंज नहीं कर सकते इन प्लेस लेकिन हमारा जो एरे होता है वो जावास्क्रिप्ट के अंदर मूटे होता है मूटे यानी उसे चेंज किया जा सकता है तो पर्टिकुलर इंडेक्स पे जाके हम अपने एरे की वैल्यू को चेंज कर सकते हैं पर पर्टिकुलर इंडेक्स पे जाके हम अपनी स्ट्रिंग की वैल्यू को इस तरीके से डायरेक्टली चेंज नहीं कर सकते ये इंपॉर्टेंट चीज है इसको आप नोट डाउन कर सकते हैं अपने नोट्स के अंदर क्योंकि ये चीज हो सकता है आपसे इंटरव्यूज के अंदर पूछ ली जाए इ म्यूटेशनल इंटरव्यूज के अंदर पूछ लिए जाते हैं नेक्स्ट जिस चीज के बारे में हम बात करेंगे दैट इज लूपिंग ओवर एन एरे ये तो हमने ऐसा एरे बना दिया जिसके अंदर पांच आइटम है ऐसा भी एरे हो सकता है जिसके अंदर 100 आइटम हो ऐसा भी एरे हो सकता है जिसके अंदर 1 लाख आइटम्स हो तो हम अपने आइटम्स जो होते हैं एरे के उसके ऊपर लूप ओवर कैसे करते हैं इसके लिए एग्जांपल ले लेते हैं फॉर एग्जांपल हमें एरे के सारे के सारे एलिमेंट्स को प्रिंट करवाना है यहां पर आ जाते हैं कोड के अंदर लेट्स सपोज वी हैव अ लिस्ट ऑफ ऑल आवर हीरोज ये हमारे सारे के सारे सुपर हीरोज की हमारे पास एक लिस्ट है थोड़ा सा इसमें स्मॉल करके मैं आपको पूरी की पूरी लिस्ट दिखा देती हूं ये हमारे पास एक लिस्ट है अब इस लिस्ट के अंदर सारे के सारे आइटम्स को हमें प्रिंट करवाना है तो प्रिंट करवाने का बहुत बेसिक तरीका ये हो सकता है कि हम लिखें console.log हीरोज ऑफ 0 नेक्स्ट लाइन के अंदर सेम चीज कॉपी पेस्ट करके हम लिख सकते हैं हीरोज ऑफ़ वन सेव किया रिफ्रेश किया तो इस तरीके से एक-एक करके हम अपने नामों को प्रिंट करवाए बट इसको करने का एक और बेटर तरीका हमारे पास है जिसको हमने लास्ट लेक्चर के अंदर ही कवर किया है व्हिच आर आर लूप्स तो लूप्स का जो असली काम है वह यहीं पे हमें दिखाई देगा लूप्स का जो असली काम है वह आइट एबल्स के अंदर दिखाई देता है आइट रेबल क्या होते हैं रेबल ऐसे आइटम्स होते हैं जावास्क्रिप्ट के अंदर जिनके ऊपर हम आइट मेट कर सकते हैं मतलब लूप लगा सकते हैं तो आइट एबल्स में स्ट्रिंग्स भी आ जाती है आइट एबल्स में ऑब्जेक्ट्स भी आ जाती हैं और आइट एबल्स में हमारे अरेज भी आ जाते हैं ये ऐसे कलेक्शंस हैं आइटम्स के स्ट्रिंग भी क्या है कैरेक्टर्स का कलेक्शन है ऑब्जेक्ट क्या है की वैल्यू पेयर्स का कलेक्शन है एरे क्या है सिमिलर टाइप ऑफ आइटम्स का हम कलेक्शन इसको बोल सकते हैं तो वैल्यूज का कलेक्शन है ये सारे आइट एबल्स है जिनके ऊपर आप आइट मेट कर सकते हो तो लूप्स का असली यूज समझ में हमें आएगा अरेज को पढ़ते टाइम अब अब अरेज के ऊपर जब हम लूप लगा रहे होते हैं तो हम हर एक आइटम को प्रिंट कर सकते हैं तो उसके लिए हम फॉर लूप भी यूज कर सकते हैं हम वाइल लूप भी यूज कर सकते हैं हम डू वाइल लूप भी यूज कर सकते हैं सबसे पहले एग्जांपल लेते हैं अपने फॉर लूप का अब फॉर लूप की जब हम शुरुआत कर रहे हैं तो अरेज के लिए फॉर लूप लिखने के लिए हमारे पास एक स्पेशल प्रॉपर्टी है जिसको हम यूज करते हैं व्हिच इज आवर लेंथ प्रॉपर्टी क्योंकि हमें पता होनी चाहिए एरे के अंदर कितने आइटम्स है तभी तो लूप लगा पाएंगे स्टॉपिंग कंडीशन तो पता होनी चाहिए ना कि कहां पे हमें रुकना है तो हमें जीरो से स्टार्ट करना होता है और हमें ज जितनी लेंथ है हमारे एरे की वहां तक हमें जाना होता है तो इफ आई राइट अ फॉर लूप आई कैन राइट फॉर हम एक वेरिएबल बना सकते हैं लेट i इज इक्वल टू या i की जगह इसको इंडेक्स वेरिएबल कह देते हैं हमारा जो इंडेक्स है इसको हम ज़ीरो से स्टार्ट करते हैं फॉर एग्जांपल हमारे पास एक एरे है जिसके अंदर आइटम है व 2 3 4 5 दिस इज़ माय एरे अब इस एरे के अंदर ये इंडेक्स ज़ीरो है वन है टू है थ्री है फोर है अब यहां से अगर मुझे लूप लगाना स्टार्ट करना है तो वी विल ओबवियसली गो टू इंडेक्स ज़ीरो फिर इंडेक्स वन में जाएंगे फिर इंडेक्स टू पे जाएंगे फिर इंडेक्स थ्री पे जाएंगे कब तक जाएंगे जब तक हम लास्ट इंडेक्स तक नहीं पहुंच जाते तो हमें इंडेक्स को तो जीरो से स्टार्ट करना है और स्टॉपिंग कंडीशन क्या होगी स्टॉपिंग कंडीशन होगी इस एरे की लेंथ क्या है इस एरे की लेंथ हमारे पास है फाइव के इक्वल ये चीज याद रखनी है एरे लेंथ लास्ट इंडेक्स प्लवन होती है लास्ट इंडेक्स फोर होगा तो एरे लेंथ फाइव होगी एरे लेंथ लास्ट इंडेक्स नहीं होता एरे लेंथ होती है कि उस एरे के अंदर कितने नंबर ऑफ कैरेक्टर्स हमारे पास या कितने नंबर ऑफ आइटम्स हमारे पास है तो इंडेक्स जीरो से जाएगा और कब तक बढ़ता जाएगा जब तक मेरे इंडेक्स की वैल्यू लेस देन माय एरे डॉट लेंथ नहीं रहती लेस दन एरे डॉट लेंथ नहीं रहती हर बार हम अपने इंडेक्स को करते रहेंगे प्लस प्लस तो इस तरीके से हम अपने एरे के ऊपर लूप चलाते हैं ये हमारी स्टार्टिंग कंडीशन हो गई इंडेक्स कब तक बढ़ेगा पहले इंडेक्स ज़ीरो होगा फिर वन होगा हर बार प्लस प्लस होगा फिर टू होगा फिर थ्री होगा फिर फोर होगा अब जैसे इंडेक्स की वैल्यू फाइव हो जाएगी वो क्या लेस दन फाइव रहेगी नहीं रहेगी तो हम इस एरे से हम इस लूप से बाहर निकल आएंगे तो इंडेक्स की वैल्यू कभी भी इक्वल टू एरे डॉट लेंथ नहीं होती हमेशा लेस दन एरे डॉट लेंथ रहती है तो इस तरीके से ये स्टैंडर्ड तरीका है हमारे एरे के लिए कोई भी लूप लिखने का तो सेम लूप हम यहां पर लिख सकते हैं फॉर लेट इंडेक्स इज इ 0 इंडेक्स ले एरे डॉ लेंथ या एरे की जगह इसको हम कहेंगे हीरोज अपने एरे का नाम लिखते हैं हीरोज ड लेंथ हर बार कर देंगे इंडेक्स प्लस प्लस और यहां पर हम अपने आइटम्स को कैसे एक्सेस करेंगे आइटम्स को जनरली हम एक्सेस करने के लिए लिखते हैं अपने एरे का नाम और फिर अपना इंडेक्स लिखते हैं ज़ीरो लिख सकते हैं वन लिख सकते हैं टू लिख सकते हैं इस बार इंडेक्स क्या है इंडेक्स है ई एक तो इसको हम प्रिंट करवा देंगे सेव किया रिफ्रेश किया तो ये सारे के सारे हमारी हीरोज के नाम हमारे पास निकल कर आ गए तो हमारा लूप कहां तक चलेगा हमारा लूप तब तक चलेगा जब तक इंडेक्स की वैल्यू हीरोस की लेंथ से लेस रहती है य गलती से इक्वल टू नहीं कर देना इक्वल टू आप तब कर सकते हो यहां इक्वल टू कर देंगे जब यहां हम इस इंडेक्स को वन से स्टार्ट करेंगे और यहां हमें इंडेक्स माइनस व करना पड़ेगा सेव किया रिफ्रेश किया तो भी हमारा कोड रन कर जाएगा बट ये स्टैंडर्ड तरीका नहीं है स्टैंडर्ड तरीका है ओके स्टैंडर्ड तरीका है इस तरीके से अपने फॉर लूप को लिखने का और यहां पर और सिंपल करने के लिए हम हमेशा इंडेक्स की जगह आ को यूज करते हैं तो जनरली जो हमारे फॉर लूप्स होते हैं प्रोग्रामिंग के अंदर वो जरो वैल्यू के साथ स्टार्ट होते हैं इंस्टेड ऑफ़ स्टार्टिंग विद वन व्हेन वी आर डीलिंग विद आइट एबल्स लाइक स्ट्रिंग ऑब्जेक्ट एरे तो हम अपने हमेशा जो हमारा इटरेटर होता है उसको आ को जे को k को जिसको भी हम लिख रहे हैं उसको हम रो के साथ स्टार्ट करते हैं और लेस देन लेंथ वाली वैल्यू रखते हैं तो ये तो हो गया हमारा हीरोज वाला एरे जिसको हमने प्रिंट करवा दिया अब इस एरे को हमने प्रिंट करवाया यूजिंग अ फॉर लूप पर एरे को प्रिंट करवाने के लिए एरे एलिमेंट्स को प्रिंट करवाने के लिए हम फॉर ऑफ लूप भी यूज कर सकते हैं फॉर इन लूप भी यूज कर सकते हैं जनरली दोनों को ही यूज कर सकते हैं फॉर ऑफ भी वैलिड होगा फॉर इन भी वैलिड होगा बट जनरली प्रोग्रामिंग के अंदर अगर एरे को एक्सेस करना है तो हम फॉर ऑफ लूप को प्रेफर करेंगे अब फॉर ऑफ लूप से एरी के एलिमेंट्स को प्रिंट करवाने के लिए हम यहां लिख सकते हैं फॉर लेट आइटम आइटम इसको बोल सकते हैं नहीं तो एलिमेंट इसको बोल सकते हैं आई लाइक टू राइट इट एज e एलिमेंट का शॉर्ट फॉर्म लेट एलिमेंट ऑफ और फिर अपने एरे का हम नाम लिखते हैं और यहां पर हम अपने इंडिविजुअल एलिमेंट को एक्सेस कर सकते हैं इसको कमेंट आउट कर देते हैं यहां पे अपने इंडिविजुअल एलिमेंट को हम एक्सेस कर सकते हैं या इसको हीरो ऑफ हीरोज भी बोल सकते हैं हीरोज तो क्या हो गया प्लूरल नाम हो गया बहुत सारे हीरोज की इंफॉर्मेशन हमने स्टोर करा ली इंडिविजुअल हीरो को हम हीरो कहेंगे तो हीरोज एरे से हमने इंडिविजुअल हीरो को निकाल लिया सेव कर लेते हैं रिफ्रेश किया ओके हीरोज इ नॉट फाइन हैव आई मेड अ स्पेलिंग मिस्टेक इसको हीरोज कह देते हैं रिफ्रेश किया तो ये हमारे पास सारी की सारी वैल्यूज आ गई इस तरीके से लेट्स सपोज हमने एक नया एरे बनाया कॉल्ड सिटीज तो सिटीज के अंदर हम अलग-अलग सिटीज की इंफॉर्मेशन स्टोर करा सकते हैं दिल्ली हो गया पुणे हो गया मुंबई हो गया हमारे पास हमारे पास हैदराबाद हो गया हमारे पास गुड़गांव हो गया अलग-अलग सिटीज हो गई हम क्या कर सकते हैं इसके लिए भी लेट सिटी ऑफ सिटीज एंड कसोल डलॉग करके प्रिंट करवा सकते हैं अपनी हर इंडिविजुअल सिटी की वैल्यू सेव किया रिफ्रेश किया तो ये हमारे पास सारी की सारी सिटीज की वैल्यू आ गई तो इस तरीके से हम अपने एरे के ऊपर लूप करते हैं अब लूप करके इंटरनली हम कोई भी काम करवा सकते हैं जैसे फॉर एग्जांपल हर सिटी को मुझे अपर केस करके प्रिंट करवाना है कैसे प्रिंट करवाएंगे हम सिटी को प्रिंट करवाते टाइम हर बार लिख देंगे डॉट टू अपर केस जो हमारा स्ट्रिंग का मेथड था जिसको हमने पढ़ा था सेव किया तो स्ट्रिंग मेथड क्या करता है हमारे लिए कुछ काम करके दे देता है सिटी को अपर केस करके दे देगा रिफ्रेश किया तो इस बार सारी की सारी सिटीज अपर केस के अंदर प्रिंट होकर आ गई तो लूप्स को हम बहुत ज्यादा फ्रीक्वेंसी टॉपिक जिसके बारे में हम बात करेंगे वो टॉपिक नहीं वो हमारा प्रैक्टिस क्वेश्चन होने वाला है प्रैक्टिस क्वेश्चन के अंदर वी आर गिवन एन एरे विद मार्क्स ऑफ़ स्टूडेंट बहुत सारे स्टूडेंट्स के हमें मार्क्स दिए हुए हैं एरे की फॉर्म में हमें क्या करना है हमें क्लास के एवरेज मार्क्स फाइंड आउट करने हैं अब एवरेज मार्क्स जिन स्टूडेंट्स को नहीं पता हम सारे के सारे मार्क्स का जो है सम कैलकुलेट करेंगे यानी 85 + 97 + 44 + 37 इस तरीके से सारी की सारी वैल्यूज का सम कैलकुलेट करके अगर हम टोटल नंबर ऑफ वैल्यूज से उसे डिवाइड कर दें फॉर एग्जांपल जो भी यहां पे सम आएगा उसको अगर हम 0 1 2 3 4 5 जितने भी एलिमेंट्स हैं इस एरे के अंदर उससे अगर डिवाइड कर दें जो यहां पे सिक्स के इक्वल तो हमारे पास एवरेज आ जाता है अब सम हमें ऑलरेडी कैलकुलेट करना आता है लूप पढ़ते टाइम हमने बात की थी ये टोटल नंबर ऑफ एलिमेंट्स कैसे आएंगे किसी भी एरे की लेंथ क्या होती है उसके टोटल नंबर ऑफ़ एलिमेंट्स होते हैं तो यहां पे सम को कैलकुलेट करके हम डिवाइड कर सकते हैं एरे की लेंथ से तो हमारे पास एवरेज मार्क्स आ जाएंगे बहुत इजी सवाल है यहां पे एक बार पॉज करना है 2 मिनट खुद से सोच के इस सवाल को सॉल्व करने की कोशिश करनी है और बाकी हम तो सॉल्व कर ही रहे हैं तो लेट्स क्रिएट आवर एरे फर्स्ट अपना ये मार्क्स नाम का एरे हम क्रिएट कर सकते हैं लेट मार्क्स इज इक्वल टू वी हैव 85 वी हैव 97 हमारे पास 44 है 37 है 76 है और 60 है तो ये सारे के सारे हमारे मार्क्स आ गए अब मुझे जाके एक एक एक एक एक एक मार्क माक्स को ऐड करके उसका सम निकालना है तो सम को स्टोर करवाने के लिए हम एक वेरिएबल क्रिएट कर सकते हैं सम जिसको इनिश इज कर देंगे जीरो के साथ शुरुआत में सम की वैल्यू रो है अब या तो हम ये कर सकते हैं सम इ इक्वल टू मार्क्स ऑफ 0 प्लस मार्क्स ऑफ वन प्लस मार्क्स ऑफ टू यह तो हो गई नॉर्मल जिंदगी पर प्रोग्रामर की जिंदगी के अंदर क्या होता है प्रोग्रामर की जिंदगी कहती है ऐसे नहीं करूंगा काम मुझे अगर इस तरीके से चीजों को इंक्रीमेंट करते जाना है हर एक इंडेक्स प जाके वैल्यू को साथ कुछ चेंज करना है कुछ कैलकुलेट करना है तो मैं तो जी लगाऊंगा लूप एरे के साथ लूप लगाने के लिए वी कैन यूज अ फॉर ऑफ लूप या हम फॉर लूप भी यूज कर सकते हैं सिंपल सा वरना अरेज के लिए हम एक और लूप को सीखेंगे बाद में जाके जिसको हम कहते हैं फॉर ईच लूप इसे एक बार फंक्शंस वाला हम टॉपिक कर लेंगे ना उसके बाद इसे सीखेंगे फॉर ईच लूप को भी हम यूज कर सकते हैं अरेज के लिए बट अभी के लिए जो लूप्स हमने सीखे हैं उन्हीं के साथ काम चलाते हैं तो यहां पे लेट मार्क्स या लेट वैल्यू ऑफ मार्क्स इंडिविजुअल मार्क्सस की वैल्यू आ जाएगी तो इसमें पहले तो हम अपनी वैल्यू को प्रिंट करवा लेते हैं टू वेरीफाई वैल्यूज आ रही है क्या हमारे पास सेव किया रिफ्रेश किया यह सारे के सारे मार्क्स आ गए हमारे पास हमें क्या करना है मार्क्स को सम के अंदर ऐड करते चले जाना है तो हम या तो लिख सकते हैं सम इ इक्वल टू सम प्लस मार्क्स सॉरी सम प्लस वैल्यू तो उससे सम के अंदर वैल्यू ऐड हो जाएगी नहीं तो इसी लाइन को लिखने का एक छोटा तरीका है सम प्लस इक्वल टू वैल्यू ये क्या हो गया ये हमारा असाइनमेंट ऑपरेटर हो गया सेव किया लास्ट में हम अपनी की वैल्यू को प्रिंट करवा सकते हैं तो हमारे पास सम की टोटल वैल्यू आ जाएगी रिफ्रेश किया सम है टोटल 399 के इक्वल अब एवरेज निकालने के लिए हमें क्या करना पड़ेगा लेट एवरेज इज इक्वल टू सम डिवाइडेड बाय सम को किससे डिवाइड करना पड़ेगा टोटल एरे की लेंथ से तो उसके लिए लिख सकते हैं मार्क्स डॉट लेंथ ये हमारे पास एवरेज आ जाएगा और यहां प्रिंट कर सकते हैं एवरेज मार्क्स ऑफ द क्लास इज इक्वल टू और ये यूज कर लेंगे यहां पे हम अपना टेंप्लेट लेट आई होप कि लास्ट क्लास से स्ट्रिंग्स के अंदर हमें याद है टेंप्लेट लिटरल्स क्या होते हैं ये एंबेड कर दिया हमने अपने वेरिएबल को यहां पे सेव किया रिफ्रेश किया तो एवरेज मार्क्स कितने आए हैं क्लास के एवरेज मार्क्स आए हैं 66.5 के इक्वल तो इस तरीके से हमने एक लॉजिकल प्रोग्राम बिल्ड किया है जिसके अंदर काफी सारी नॉलेज हमने यूज़ किया है हमने स्ट्रिंग्स के कांसेप्ट को यूज़ किया है हमने वेरिएबल एंड डेटा टाइप्स को तो यूज़ किया ही है हमने अरेज को यूज़ किया है हमने लूप्स को यूज़ किया है प्लस इक्वल टू के अंदर ऑपरेटर को यूज़ कर लिया डिवाइड को यूज़ कर लिया तो इस तरीके से जितने भी बेसिक कांसेप्ट हम सीखते हैं उनको हर क्लास के अंदर किसी ना किसी फॉर्म में हम यूज करते हुए चले जाते हैं नेक्स्ट एक और प्रैक्टिस क्वेश्चन सॉल्व करेंगे इस प्रैक्टिस क्वेश्चन के अंदर हमें दिया हुआ है एक गिवन एरे विद प्राइस ऑफ फाइव आइटम्स हमारे पास ये पांच आइटम्स हैं जो हमें दिए हुए हैं और हर आइटम के ऊपर 10 पर का ऑफर है 10 पर ऑफ है हर आइटम के ऊपर तो हमें क्या करना है इसी एरे के अंदर हमें स्टोर करना है फाइनल प्राइस आफ्टर अप्लाइड फॉर एग्जांपल ये एक वैल्यू ले लेते हैं 300 ये अगर 300 वैल्यू मेरे पास है अभी एरे के अंदर तो इस पे ऑफर कितना होगा इस पे 10 पर का ऑफर होगा मतलब ₹10 ऑफ होंगे अब मुझे यही ₹ 3030 300 में से माइनस करने हैं तो मेरी फाइनल अमाउंट हो जाएगी 300 - 30 दिस विल टर्न आउट टू बी 270 तो फाइनल वैल्यू जो यहां पे नए एरे के अंदर आनी चाहिए इसी एरे के अंदर 300 को काट के यहां पे 270 सेव होना चाहिए तो इसी तरीके से करना है जैसे 900 वाला है तो 900 का 10 पर ऑफ होगा 90 ऑफ हो जाएंगे फाइनल वैल्यू क्या आएगी 900 - 90 दिस विल बी इक्वल ट 810 तो यहां से कट के 810 आ जाना चाहिए तो हमें क्या करना है स्टेप बाय स्टेप एक-एक इंडेक्स पर हम जाएंगे और एक एक इंडेक्स पर जाके हम अपनी वैल्यूज को चेंज करेंगे एक-एक इंडेक्स प कैसे जाते हैं हम एक-एक इंडेक्स प जाने के लिए हम अपने लूप को यूज करेंगे फॉर एग्जांपल हम अपना जो फॉर लूप लिखेंगे उसके अंदर लेट अ वैल्यू ऑफ आइटम्स लिख सकते हैं आइटम्स ले सकते हैं अपने एरे का नाम और उसके अंदर हर एक आइटम के लिए हमें क्या करना है अगर मेरे पास कोई भी वैल्यू है वैल्यू के अंदर तो 300 भी हो सकता है 600 भी हो सकता है सब सबसे पहले तो ऑफर निकाल लो कितना ऑफर है ऑफर हो जाएगा वैल्यू का 10 पर किसी भी नंबर का 10 पर कैसे निकलता है उसको मल्टीप्लाई कर देते हैं या उसको हम डिवाइड कर देते हैं 10 के साथ किसी भी नंबर को 10 से डिवाइड कर दो तो उसका 10 पर आ जाएगा तो ये हमारे पास ऑफर आ जाएगा मुझे क्या करना है वैल्यू में से ऑफर को माइनस करना है और इसी को फाइनली फिर वैल्यू के अंदर सेव करवा लेना है तो इस तरीके से हम चेंज कर पाएंगे अब यहां पे एक चीज नोट करने वाली है एक चीज नोट करने वाली है कि यहां पे हम फॉर ऑफ लूप को यूज़ नहीं कर पाएंगे फॉर ऑफ लूप को इसलिए यूज़ नहीं कर पाएंगे क्योंकि फॉर ऑफ लूप हमें डायरेक्टली वैल्यू दे देता है पर इंडेक्स नहीं देता पर एरे के अंदर चेंज करने के लिए हमें इंडेक्स पता होना चाहिए कि हम कौन से इंडेक्स पे चेंज करना चाहते हैं तो सिर्फ वैल्यू के बेसिस पे हम इंडेक्स के अंदर चेंज नहीं कर पाएंगे तो इसीलिए इस सवाल को सॉल्व करने के लिए हमें फॉर लूप को यूज़ करना पड़ेगा या वाइल लूप या डू वाइ लूप कोई ऐसा लूप यूज़ करना पड़ेगा जिसके अंदर हम अपने इंडेक्स को ट्रैक कर सकें वैसे इसके अंदर भी इंडेक्स को ट्रैक कर सकते हैं इनडायरेक्टली इन फैक्ट लेट मी टेल यू हाउ डू वी डू इट यूजिंग फॉर ऑफ लूप एक हम वेरिएबल बना लेते हैं लेट आइटम्स इज इक्वल टू इसमें हर आइटम का प्राइस स्टोर कर लेते हैं 250 हो गया हमारे पास 645 हो गया हमारे पास 300 हो गया वी हैव 900 वी हैव 50 सारे के सारे आइटम्स आ गए अब हम क्या करेंगे फॉर ऑफ लूप से लेट प्राइस या वैल्यू ऑफ आइटम्स सबसे पहले तो अपनी वैल्यू को हम प्रिंट करवा लेते हैं कसोल वैल्यू सेव किया प्रिंट किया यह सारी की सारी वैल्यूज आ गई अब मुझे देखना है मैं यहां पर आटर कैसे बना सकती ह मतलब इंडेक्स कैसे ट्रैक कर सकते हैं उसके लिए हम एक अलग वेरिएबल बना सकते हैं लेट इंडेक्स इ इक्वल 0 इसको जीरो से स्टार्ट कर लो और लूप के अंदर हर बार इस इंडेक्स को प्लस प्लस कर दो तो हर बार हमारे पास इंडेक्स भी होगा तो य प्रिंट करवा सकते हैं वैल्यू एट इंडेक्स और यहां आपने इंडेक्स की वैल्यू लिख दो इंडेक्स इ इक्वल और यहां अपनी वैल्यू को हम प्रिंट करवा लेंगे इस तरीके से हर इंडेक्स पे डॉलर लगा देते हैं हर इंडेक्स प जो वैल्यू होगी वो हमारे लिए प्रिंट हो जाएगी रिफ्रेश किया तो इंडेक्स नंबर जीरो पे 250 है इंडेक्स नंबर वन पे 645 है इंडेक्स नंबर टू पे 300 है तो इस तरीके से हम इंडेक्स को भी ट्रैक कर सकते हैं अपने फॉर ऑफ लूप में हां इस इंडेक्स को हम इनडायरेक्टली ट्रैक कर रहे हैं डायरेक्टली ये लूप का पार्ट नहीं है लूप का पार्ट तो तब होता है जब हम फॉर लूप लगाते लेट आ इ 0 आ ले आइटम्स डॉट लेंथ और हर बार हम करते हैं अपना i+ प तो इस तरीके से भी हम अपने लूप को यूज कर सकते हैं इस तरीके से भी लूप को यूज कर सकते हैं यहां हम चाहे तो इंडेक्स को शॉर्ट में i बोल सकते हैं दिस विल बी माय आ वेरिएबल इसको कर लेते हैं सेव पहले इस लूप से सॉल्व करते हैं सवाल को इसे कॉमेंट आउट कर देते हैं यहां से सॉल्व करेंगे सवाल को तो हमें क्या करना है हर इंडेक्स के लिए उसकी वैल्यू चेंज कर देनी है तो सबसे पहले तो ऑफर निकाल लो लेट ऑफर हर वैल्यू के ऊपर कितना ऑफर होगा आइटम्स का 10 पर तो हर जो इंडिविजुअल आइटम की वैल्यू है वो आ जाएगी वैल्यू डिवाइडेड बाय 10 हमारा ऑफर वैल्यू आ गई और फाइनली हमें क्या करना है फाइनली हमें आइटम्स के अंदर जाके इंडेक्स पर अपनी वैल्यू को उसी से डिक्रीज करना है वैल्यू से ऑफर अमाउंट को डिक्रीज कर देना है तो फाइनली जो अमाउंट आएगी कंसोल डट लॉग कर लेंगे हम उसे वैल्यू आफ्टर ऑफर इज इक्वल टू अब अपनी यहां वैल्यू को नहीं प्रिंट करवाना क्योंकि वैल्यू को अगर हम प्रिंट करवाएंगे इफ आई राइट वैल्यू यर तो उसके अंदर कोई चेंज नहीं आएगा सेव रिफ्रेश तो 250 था आफ्टर ऑफर भी 250 है 645 था आफ्टर ऑफर भी 645 है तो यह क्या है वैल्यू वैल्यू लूप का वेरिएबल है मुझे क्या मैंने क्या चेंज किया है मैंने तो एरे को चेंज किया है आपको समझना पड़ेगा यह वेरिएबल अलग है वेरिएबल के अंदर वैल्यू कॉपी होके आ रही है उस इंडेक्स की और एरे जो है वो मेमोरी के अंदर अलग ही चल रहा है तो यहां मुझे प्रिंट करवाना है एक्चुअली अपने आइटम्स ऑफ आ को आइटम्स ऑफ आ को प्रिंट करवाएंगे सेव करेंगे रिफ्रेश करेंगे तो इस इस बार हर बार हमारा जो ऑफर है वो अप्लाई हो रहा है आप नोटिस करोगे 300 का जिसका प्राइस था उसका फाइनल प्राइस 270 आ गया है 900 का जिसका प्राइस था उसका फाइनल प्राइस 810 आ गया है 50 था तो 45 हो गया सब पे 10 पर का ऑफर अप्लाई हो गया है तो हम इस लाइन को तो डायरेक्टली हटा ही सकते हैं सेव किया रिफ्रेश किया तो ये हमारी ऑफर के बाद वाली अमाउंट आ गई तो अब अगर हम अपने आइटम्स वाले एरे को प्रिंट करवाएंगे तो इन सब में नई वाली अमाउंट्स होंगी जिन सब पे 10 पर का ऑफर अप्लाई हो चुका है तो ये तो हो गई फॉर ऑफ लूप को यूज करना यही सेम काम हम अपने फॉर लूप में कर सकते हैं ये हमने फॉर लूप बनाया इसमें सबसे पहले तो आइटम के ऊपर जितना ऑफर है उसको कैलकुलेट कर लिया कैसे कैलकुलेट करेंगे आइटम्स ऑफ i डिवाइड बा 10 ये ऑफर कैलकुलेट हो गया इसको कॉमेंट आउट कर लेते हैं फिर क्या करेंगे हर जो आइटम्स ऑफ आ है वहां से माइनस इक्वल टू हम कर सकते हैं अपना ऑफर माइनस इक्वल टू इसी चीज को लिखने का एक सेकंड तरीका है बेटर तरीका है एंड फिर हम अपनी या इनफैक्ट यहां पे कुछ नहीं करेंगे यहां पे सिर्फ चेंज करेंगे चेंज कर लिया और लास्ट में अपना पूरा एरे ही प्रिंट करवा देंगे तो लास्ट में अपने आइटम्स एरे को हम प्रिंट करवा देंगे इसे इनफैक्ट यहां से हटा सकते हैं तो ये क्या हो गया और सिंपलर लूप हो गया सेम चीज को करने का सेव किया रिफ्रेश किया तो ये हमारे पास सारे के सारे आइटम्स आ गए विद द ऑफर अप्लाइड टू देम तो इस तरीके से एरे को यूज करते हुए हम जनरली अपने लूप्स को यूज कर रहे होते हैं और लूप के अंदर हम कोई काम करते हैं ऐसा काम जो हमें हर एक एलिमेंट के लिए करना होता है अब नेक्स्ट टॉपिक जिसकी हम बात कर रहे होंगे इसका नाम है एरे मेथड्स तो जैसे पहले हमने स्ट्रिंग्स की बात की फिर स्ट्रिंग के अंदर कौन-कौन से यूजफुल मेथड्स होते हैं जिनको हम यूज कर सकते हैं उनके बारे में बात की वैसे ही हमारे अरेज के साथ भी कई सारे यूजफुल मेथड्स होते हैं जिनको हम यूज कर सकते हैं तो इन सारे मेथड्स के बारे में हम बात करने वाले हैं अब एरे मेथड सीखने से पहले हमारे दिमाग में ख्याल आ सकता है कि अरेज हम पढ़ तो रहे हैं बट प्रैक्टिकली अरेज या लूप्स यूज कहां पर होते हैं तो जनरली जहां पर भी एरे जैसी चीज जहां पर भी स्ट्रिंग जैसी चीज जहां पर भी ऑब्जेक्ट्स जैसी चीजें यूज होती है इंटरनली प्रोग्रामिंग में उनके अंदर अगर हमें कुछ चेंजेज लेके आने हैं तो हम लूप्स को तो यूज़ करते ही हैं और अरेज की स्पेसिफिकली अगर बात करें तो जनरली जितनी भी बड़ी हम वेबसाइट देखते हैं हर वेबसाइट का कुछ ना कुछ डाटा इंटरनली अरेज की फॉर्म में ही स्टोर हो रहा होता है फॉर एग्जांपल हमारे पास कुछ आइटम्स हैं आइटम्स की हो सकता है बहुत सारी प्रॉपर्टीज हो हम amazononline.in है जो एक ही प्रोडक्ट के बारे में स्टोर्ड है तो उस इंफॉर्मेशन की जो मल्टीपल स्ट्रिंग्स बनेंगी उन सबको हम एक एरे के अंदर स्टोर कर सकते हैं तो इस तरीके से हमारे ऊपर डिपेंड करता है कि अपने डेटा को स्टोर करने के लिए हम किस तरीके के स्ट्रक्चर को क्या हम अरेज के अंदर अपने डेटा को स्टोर कराना चाहते हैं या ऑब्जेक्ट के अंदर डेटा को स्टोर कराना चाहते हैं तो ये ऐसी चीजें हम पढ़ रहे हैं जब हम बेसिक्स ऑफ़ जावास्क्रिप्ट पढ़ रहे हैं हम ऐसी चीजें पढ़ रहे हैं जो हम प्रोग्रामिंग के अंदर बहुत जगह यूज़ कर रहे होंगे इनफैक्ट आने वाले हर एक लेक्चर के अंदर ऑलमोस्ट इन कांसेप्ट को रिपीट कर कर के यूज़ कर रहे होंगे अब एरे मेथड्स के ऊपर वापस आ जाते हैं मेथड्स हमारे वही कुछ ऐसी चीजें होती है प्रोग्रामिंग के अंदर जो हमें कुछ काम करके देती हैं इनमें से सबसे पहला मेथड जिसे हम पढ़ रहे होंगे दैट विल बी आवर पुश मेथड अब पुश मेथड को पढ़ने से पहले हमारे पास दो तरीके के मेथड्स होते हैं अरेज के अंदर एक वो मेथड होते हैं जो हमारे एरे को चेंज करते हैं और एक वो मेथड्स होते हैं जो हमारे एरे को चेंज नहीं करते एक नया एरे हमें रिटर्न करके देते हैं अब स्ट्रिंग्स के अंदर तो क्लियर था स्ट्रिंग्स के अंदर हमें पता था स्ट्रिंग्स इ म्यूटेशन करके देते थे पर अरेज के अंदर ऐसा नहीं होता अरेज के अंदर कुछ मेथड्स हमें उसी सेम एरे के अंदर चेंज कर देते हैं कुछ मेथड नया एरे रिटर्न करते हैं हमें एज सच याद करने की जरूरत नहीं होती एरे मेथड्स को या कौन सा चेंज करता है कौन सा चेंज नहीं करता जनरली टाइम के साथ धीरे-धीरे हम प्रैक्टिस करेंगे बार-बार यूज़ करेंगे हमें खुद याद हो जाएगा वरना डे टू डे लाइफ के अंदर डे टू डे प्रैक्टिकल लाइफ के अंदर हम क्या करते हैं हम जब भी कोई प्रोजेक्ट बिल्ड कर रहे होते हैं हम जनरली गल कर लेते हैं कि कौन सा एरे मेथड किस तरीके से काम कर रहा होता है पर हां एक बार हमें बेसिक अंडरस्टैंडिंग हो जाए कुछ एरे मेथड्स की जो इंपॉर्टेंट वाले हैं तो हमें जनरली चीजें याद रह जाती है सबसे पहले बात करेंगे अपने पुश मेथड के बारे में पुश मेथड का काम होता है एरे के अंदर एंड में अगर हम कुछ भी ऐड करना चाहते हैं तो तो पुश जनरली प्रोग्रामिंग के अंदर ऐड होता है यूज होता है टू ऐड समथिंग और पॉप यूज होता है टू डिलीट समथिंग तो दोनों का अलग-अलग यूसेज होता है तो पुश करने का मतलब होता है एंड में एरे के एंड में चीजों को ऐड करना फॉर एग्जांपल आई हैव अ लिस्ट ऑफ वेजस वेजिटेबल्स की लिस्ट है मेरे पास मेरे पास है आई हैव पोटेटो मेरे पास है अ आर द वेजिटेबल्स वी ईट या अभी वेजिटेबल्स के नाम मुझे ज्यादा याद नहीं आ रहे तो इसको हम आइटम्स या फूड आइटम्स बोल सकते हैं लेट्स कॉल इट फूड आइटम्स फूड आइटम्स की लिस्ट है हमारे पास इसमें पोटैटो आ गया वी हैव एप्पल वी हैव अ लीची वन ऑफ माय फेवरेट फ्रूट्स एंड वी कैन हैव लेट्स से टोमेटो काफी सारे डिफरेंट फूड आइटम्स है हमारे पास अब इस फूड आइटम वाला जो एरे है इसके अंदर लास्ट में मुझे अपने आइटम को पुश करना है या यहां पर आ जाते हैं अपने फूड आइटम्स को प्रिंट करवाते हैं तो ये हमारे फूड आइटम्स हो गए अब फूड आइटम्स में लास्ट में प्रिंट करने के लिए हम लिखते हैं ओके फूड आइटम्स डॉट पुश और डॉट पुश के अंदर इस तरीके से पैरेंस लगा के हम अपने मेथड को यूज करते हैं और अंदर हम वो वैल्यू पास कर सकते हैं जिसे हमें ऐड करना है फॉर एग्जांपल मुझे ऐड करना है चिप्स को फूड आइटम्स एंटर किया तो अब क्या हुआ हमारा फूड आइटम्स जो है वो चेंज हो गया और ये मेथड क्या करता है ये मेथड नई जो अपडेटेड लेंथ होती है उसको रिटर्न कर देता है अब अगर आप फूड आइटम की वैल्यू देखोगे सो नाउ दिस इज एन अपडेटेड वैल्यू जिसके अंदर एक और आइटम जो है वो ऐड होकर आ गया है इसी तरीके से फूड आइटम्स के अंदर अगर हमें मल्टीपल आइटम्स ऐड करने होते हैं फूड आइटम्स डॉट पुश को हम यूज कर सकते हैं पहले मान लो हमने चिप्स ऐड कर दिया उसके बाद कॉमा से सेपरेट करके हम नया ही आइटम ऐड कर सकते हैं लेट्स सपोज आई ऐड अ बर्गर या उसके बाद फूड आइटम्स के अंदर मैंने पनीर ऐड कर दिया एंड फिर जब हम प्रिंट करवाएंगे कसोल डॉट लॉक करके अपने फूड आइटम्स को तो हमारा एरे चेंज हो चुका होगा और उसके अंदर यह सारी की सारी नई जो वैल्यूज है वो हमारे पास आ गई होंगी तो पुश होता है सारी चीजें एक चीज आपने नोटिस किया होगा एंड में जाके ऐड हुई है स्टार्टिंग में नहीं ऐड हुई ऑलरेडी जो एसिस्टिंग आइटम्स थे उसके एंड में जाके ऐड हुए हैं और पुश जो है हमारे एजिस्टिफाई फॉर एग्जांपल इफ आई राइट फूड आइटम्स डट पॉप तो यहां से क्या होगा यह टोमेटो जो है यह डिलीट हो जाएगा और फिर बाद में पहले एक बार फूड आइटम्स को प्रिंट करवा लेते हैं एंड बाद में एक बार प्रिंट करवाएंगे सेफ रिफ्रेश तो पहले फूड आइटम के अंदर यह चार आइटम थे एंड इस बार फूड आइटम के अंदर सिर्फ तीन ही हमारे पास आइटम्स रह गए हैं अब यहां पर यह जो पॉप है यह हमें डिलीटेड वैल्यू रिटर्न करता है लेट डिलीटेड वैल्यू या डिलीटेड आइटम इज इक्वल टू दिस वैल्यू तो हम इसे भी प्रिंट करवा सकते हैं कसोल डलॉग डिलीटेड डिलीटेड आइटम सेव रिफ्रेश तो कौन सा आइटम डिलीट हुआ टोमेटो जो आइटम था वो हमारे लिए डिलीट हो गया और ये भी क्या हुआ एंड से डिलीट हुआ तो पॉप भी कहां चेंज करता है पॉप भी ओरिजिनल एरे के अंदर चेंज लेके आता है इसके बाद बात करते हैं टू स्ट्रिंग की टू स्ट्रिंग का काम होता है टू कन्वर्ट एन एरे टू अ स्ट्रिंग फॉर एग्जांपल इफ आई हैव दिस एरे हो सकता है अभी तो इसके अंदर ऑलरेडी स्ट्रिंग अवेलेबल है पर अगर हम पूरे के पूरे एरे को स्ट्रिंग के अंदर कन्वर्ट करना चाहते हैं वी हैव दिस फूड आइटम्स तो एक तो है कि मैं नॉर्मली अपने एरे को इस तरीके से प्रिंट करवाऊं फूड आइटम्स मैंने लिख दिया और दूसरा तरीका है कि इसी लाइन को कॉपी करके हम प्रिंट करवाएं फूड आइटम डट स्ट्रिंग सेव करेंगे रिफ्रेश करेंगे तो एक तो हमें पता चल रहा है एक के अंदर क्या है सारे के सारे एरे के आइटम्स प्रिंट होके आ रहे हैं और दूसरा है सारे के सारे एरे के आइटम्स प्रिंट हो रहे हैं विद अ कॉमा बट ये क्या है ये एक स्ट्रिंग है यह एक एरे नहीं है यह एक स्ट्रिंग है तो इस तरीके से हम अपने किसी भी एरे को स्ट्रिंग के अंदर कन्वर्ट कर सकते हैं और चेक करने के लिए कि ओरिजिनल एरे के अंदर चेंज हुआ है या नहीं हुआ वो हमने कर लिया कि ओरिजिनल एरे के अंदर टू स्ट्रिंग चेंज नहीं करता टू स्ट्रिंग क्या करता है यहां पे एक नया स्ट्रिंग रिटर्न करता है जिसके अंदर एरे के सारे आइटम्स होते हैं ओरिजिनल एरे वैसा का वैसा इंटैक्ट रहता है यह तो हमने स्ट्रिंग्स वाला ही एरे दे दिया अगर हमारे पास कोई मार्क्स वाला एरे होता जिसमें हमारे पास स्टूडेंट्स के लेट्स सपोज मार्क्स होते 36 इस तरीके से तो हम इसे भी कन्वर्ट कर सकते थे टू अ स्ट्रिंग वी कुड हैव रिटन मार्क्स तो मार्क्स तो एरे हो जाता हम लिख सकते थे मार्क्स डॉटू स्ट्रिंग तो ये एक हमारे पास सिंगल स्ट्रिंग आ जाती अब सिंगल स्ट्रिंग क्यों चाहिए कुछ-कुछ यूज केसेस हो सकते हैं स्पेसिफिक किसी वेबसाइट के अंदर हो सकता है हम कुछ चेंज लेके आ रहे हो हमें स्ट्रिंग के अंदर डटा चाहिए हो पर हां अगर इस तरीके की कोई सिचुएशन होगी तो फिर हम अपने इस मेथड को यूज़ कर सकते हैं नेक्स्ट हम एक और मेथड के बारे में बात कर सकते हैं व्हिच इज द कंकट मेथड कंकट का काम होता है टू कॉन्कैटिनेट यानी टू जॉइन मल्टीपल एरे जैसे कंकट को हमने स्ट्रिंग्स के अंदर भी पढ़ा था कॉनकेटिंग के अंदर एक स्ट्रिंग को दूसरी स्ट्रिंग के साथ जोड़ने के काम आता है और यहां पे वो मल्टीपल एरे को एक दूसरे के साथ जोड़ने के काम आता है तो कंकट क्या करता है इट जॉइन मल्टीपल एरे एंड रिटर्न्स द रिजल्ट ओरिजिनल एरे के अंदर चेंज नहीं करता कनट नया रिजल्ट हमें रिटर्न करके देता है जैसे एक एरे हम बनाते हैं लेट्स कॉल इट मार्वल मार्वल हीरोज का एरे बनाते हैं इसके अंदर हमारे पास थॉर आ जाएगा इसी के अंदर वी विल हैव स्पाइडर मैन वी विल हैव व्ट डू वी हैव वी हैव आयन मैन तीन हमारे पास सुपर हीरोज हो गए और मार्वल और एक हम डीसी हीरोज का बना सकते हैं जिसके अंदर हमारे पास सुपरमैन आ जाएगा जिसके अंदर हमारे पास बैटमैन आ जाएगा इस तरीके से तो फाइनली हम क्या कर सकते हैं अगर इन दोनों एरे के एलिमेंट्स को कंबाइन करके मुझे एक कॉमन एरे बनाना है हीरोज तो उसके लिए हम अपने पहले एरे का नाम लिख सकते हैं मार्वल हीरोज और फिर हम लिख सकते हैं डॉट ककट और कॉन्कैटमैप हीरोज इस तरीके से लिख लेते हैं फॉलो आवर कैमल केस तो ये मार्वल हीरोज हो गए ये हमारे डीसी हीरोज हो गए इस तरीके से तो ये क्या करेगा यह हमें एक नया एरे रिटर्न करेगा जिसे हम हीरोज कह सकते हैं और फिर हम अपने नए एरे को प्रिंट करवा लेंगे console.log रोज सेव किया रिफ्रेश किया तो ये हमारा नया एरे रिटर्न होकर आ गया जिसमें ये तीन जो आइटम्स है वो हमारे फर्स्ट वाले एरे यानी इस वाले एरे के आते हैं और सेकंड वाले एरे का आइटम्स फिर इसके अंदर जाके कंकट हो जाते हैं ऐड हो जाते हैं और सारे के सारे आइटम्स उसी सीक्वेंस में ऐड होते हैं सीक्वेंस में वो एरे के अंदर स्टोर्ड थे और यहां से हम वेरीफाई भी कर सकते हैं कि हमारा जो कंकट है वो ओरिजिनल एरे को चेंज नहीं करता जैसे इफ आई ट्राई टू प्रिंट डीसी हीरोज वो वैसे का वैसा है इफ आई ट्राई टू प्रिंट मार्वल हीरोज वो एरे भी वैसे का वैसा ये हमारा नया एरे है जो हमारे लिए रिटर्न होके आया है क्रिएट हुआ है इसके अंदर अगर हम डीसी हीरोज को पहले ऐड करना चाहते हैं तो हम यहां डीसी हीरोज ड ककट फिर दूसरा नाम लिख सकते हैं हम चाहे तो यहां पर मल्टीपल अरेज भी पास कर सकते हैं जैसे फॉर एग्जांपल इफ आई पास इंडियन हीरो स व्हिच आई कैन पास शक्तिमान या आई कैन पास क्रिश इफ दिस इज द राइट स्पेलिंग एंड यहां हम अपने इंडियन हीरोज को भी साथ में कंकट ट कर सकते हैं रिफ्रेश किया तो इस बार सारे के सारे जो मल्टीपल हीरोज हैं वो हमारे पास सिंगल एरे के अंदर रिटर्न होकर आ गए अब नेक्स्ट मेथड जिसकी हम बात करेंगे ये है हमारा अनशिफ्ट मेथड अनशिफ्ट मेथड इज इक्विवेलेंट टू द पुश मेथड मतलब ये पुश की जैसे काम करता है और शिफ्ट मेथड जो होता है यह हमारा पॉप की तरह काम करता है अब अनशिफ्ट मेथड क्या करता है ये किसी भी एरे के स्टार्ट में एलिमेंट को ऐड करने के काम आता है फॉर एग्जांपल अगर हमारे पास सिर्फ मार्वल हीरोज वाला एरे है तो मार्वल हीरोज के अंदर हम क्या कर सकते हैं अनशिफ्ट कर सकते हैं अनशिफ्ट और यहां ऐड कर देंगे लेट्स सपोज एंटम तो ये एंट मैन क्या है हमारे एरे के अंदर स्टार्टिंग में ऐड होके आ जाएगा सेव किया रिफ्रेश किया वी कैन प्रिंट आवर मार्वल हीरोज तो स्टार्टिंग में क्या आ गया स्टार्टिंग में हमारे पास एंटम प्रिंट होकर आ गया एंड शिफ्ट का काम होता है स्टार्टिंग से डिलीट करना तो अगर हम यहां पर इसे हटा देते हैं सिर्फ शिफ्ट कर देते हैं तो तो ये हमें जो भी वैल्यू रिटर्न करेगा लेट वैल्यू इज इक्वल टू दिस उसे हम प्रिंट करवा सकते हैं तो ये वैल्यू क्या हो जाएगी डिलीट हो जाएगी डिलीटेड एंड यहां हम अपनी वैल्यू को प्रिंट कर देंगे रिफ्रेश किया तो इसने क्या किया थॉर को डिलीट कर दिया और मार्वल हीरोज वाला अगर हम देखेंगे तो अब हमारे मार्वल हीरोज के अंदर सिर्फ स्पाइडरमैन आयन मैन है ये जो फर्स्ट एलिमेंट था फर्स्ट आइटम था इसको डिलीट कर दिया हमारे शिफ्ट ऑपरेटर ने तो शिफ्ट जो भी डिलीट करता है उस वैल्यू को रिटर्न कर देता है और ओरिजिनल एरे के अंदर हमें चेंज करके दे देता है अब एक और चीज आपको यहां पे नोट करनी है इवन दो मेरे जो एरे मेथड्स हैं इनके नाम मैंने कैपिटल के अंदर लिखे हुए हैं यहां भी कैपिटल में लिखा हुआ है यहां भी कैपिटल में पर ये सारे के सारे जो हमारे मेथड्स होते हैं हमेशा स्मॉल से स्टार्ट होते हैं तो कभी भी शिफ्ट की जगह यहां कैपिटल एस से शिफ्ट नहीं लिख देना वो शिफ्ट जो है स्मल एस से है कंकट में भी स्मल सी से स्टार्ट होता है जितने भी मेथड्स होते हैं एरे के स्ट्रिंग के सारे के सारे स्मॉल लेटर के साथ स्टार्ट होते हैं नेक्स्ट हम दो और इंपॉर्टेंट मेथड्स के बारे में बात करेंगे इनमें से एक है स्लाइस एक है मेथड स्ट्रिंग्स के अंदर करता है वैसा ही काम एरे इस के अंदर करता है स्लाइस मेथड क्या करता है हमें स्लाइस काट के जैसे केक की स्लाइस हम निकाल लेते हैं किसी भी अ हम खीरा काटते हैं खीरे की स्लाइस निकाल लेते हैं वैसे ही हम अपने एरे की स्लाइस निकाल सकते हैं पीस निकाल सकते हैं कैसे स्लाइस को हम ये बता देते हैं स्टार्टिंग इंडेक्स ये है एंडिंग इंडेक्स ये है मुझे एक टुकड़ा लाकर दे दो अब स्लाइस मेथड जो है ओरिजिनल एरे के अंदर चेंज नहीं करता ओरिजिनल एरे के अंदर चेंज नहीं करता हमारा स्लाइस मेथड तो स्लाइस मेथड को एक बार देखते हैं लेट्स ड सम मोर हीरोज इन दिस वी कैन ड एंट मैन हम ऐड कर सकते हैं डॉक्टर स्ट्रेंज तो ये हमारे पास काफी सारे हीरोज आ गए एंड कंसोल डॉट लॉक करके हम अपने हीरोज को प्रिंट भी करवा सकते हैं सेव किया रिफ्रेश किया तो वी हैव फाइव एलिमेंट्स अब फाइव एलिमेंट्स में से लेट्स सपोज मुझे तो यहां से लेके यहां तक ही चाहिए स्टार्टिंग इंडेक्स क्या हो जाएगा स्टार्टिंग इंडेक्स है वन ये एंडिंग इंडेक्स है टू तो हम लिख सकते हैं कसोल डलॉग आई वांट अ पीस ऑफ इट सो मावल रोज डॉट स्लाइस स्टार्टिंग इंडेक्स वन हो जाएगा और हम हमेशा क्या करते हैं जब भी हमें कोई टुकड़ा चाहिए होता है एंडिंग इंडेक्स नॉन इंक्लूसिव होता है नॉन इंक्लूसिव यानी जो भी हम एंडिंग इंडेक्स लिखेंगे वो एंड वाला इंडेक्स इंक्लूड नहीं होगा तो अगर मैंने टू लिखा तो टू इंक्लूड नहीं होगा सिर्फ वन से लेके वन तक ही स्लाइस मेरे पास आएगी जैसे अगर मैंने वन से टू लिखा सेव किया रिफ्रेश किया तो मेरे पास सिर्फ एक ही आइटम आएगा क्यों क्योंकि वन से लेके टू का मतलब है टू को मत इंक्लूड करो वन से लेके वन तक ही लेके आओ तो अगर मुझे दो आइटम्स चाहिए तो मुझे वन से लेके थ्री लिखना पड़ेगा सेव किया रिफ्रेश किया इस बार हमारे पास टू आइटम्स आ गए सिमिलरली इफ आई डोंट ऐड एनीथिंग तो इसका मतलब होता है वन से लेके एंड तक रिफ्रेश किया तो ये वन से लेके एंड तक सारे के सारे चारों आइटम्स हमारे पास प्रिंट होके आ गए इसमें से फर्स्ट आइटम नहीं आया बाकी सारे आइटम्स हमारे पास आ गए तो ये भी हमारे पास ऑप्शनल होता है एंड अगर स्टार्टिंग इंडेक्स हटा दिया तो जो टुकड़ा ये चीज रिटर्न करेगा स्लाइस मेथड रिटर्न करेगा वो पूरा का पूरा एरे होगा तो एक कंप्लीट एरे को स्लाइस मेथड रिटर्न कर देता है तो कभी-कभी स्लाइस मेथड को हम अपने एरे की कॉपी बनाने के लिए भी यूज़ कर सकते हैं तो ये तो हो गया हमारा स्लाइस मेथड थड अब बात करते हैं ऐसा ही साउंड करने वाला स्प्लाइसोजोम्स स्टार्टिंग इंडेक्स के बाद कितने आइटम्स उसको डिलीट करने चाहिए जैसे फॉर एग्जांपल इफ वी हैव एन एरे इसके अंदर वन है टू है थ्री है फोर है फाइव है सिक्स है सेवन है ये एरे है मेरे पास सारे के सारे इंडेक्स की वैल्यूज लिख लेते हैं ये सारे के सारे इंडेक्स हो गए अब जो स्लाइस है स्लाइस के अंदर सबसे पहले हम अपना स्टार्टिंग इंडेक्स पास करते हैं लेट्स सपोज हमें इंडेक्स नंबर टू से चेंज शुरू करना है तो मैं इंडेक्स टू पास कर दूंगी फिर हमें बताना होता है टू के बाद मुझे कितने एलिमेंट्स को डिलीट करना है अगर टू के बाद मैं चाहती हूं एक एलिमेंट डिलीट हो जाए तो इंडेक्स वन ये जो इंडेक्स टू वाला एलिमेंट है ये डिलीट हो जाएगा अगर मैं कहती हूं इंडेक्स टू के बाद मुझे दो एलिमेंट्स को डिलीट करना है तो टू और थ्री दोनों डिलीट हो जाएंगे अगर मैं कहती हूं इंडेक्स टू के बाद मुझे तीन एलिमेंट्स को डिलीट करना है तो 2 3 4 ये तीनों एलिमेंट्स डिलीट हो जाएंगे तो अगर मैं कहती हूं मुझे एक भी एलिमेंट डिलीट नहीं करना तो इसको हम ज़ीरो की तरह पास कर सकते हैं कि मुझे तो एक भी एलिमेंट डिलीट नहीं करना या लेट्स सपोज मुझे दो एलिमेंट्स डिलीट करने हैं और फिर हम बताते हैं क्या आपको कुछ नए एलिमेंट्स ऐड करने हैं अगर हमें नए एलिमेंट्स नहीं ऐड करने तब तो आप कुछ भी नहीं आप इसको खाली छोड़ सकते हैं हम पेंसिस से इस क्लोज कर सकते हैं पर अगर हमें कुछ नए एलिमेंट्स ऐड करने हैं तो वो एलिमेंट्स कहां पे ऐड होते हैं वो एलिमेंट इसी इंडेक्स पे ऐड होते हैं ये जो इंडेक्स है यहीं से सब कुछ डिसाइड होता है इसी इंडेक्स पे जाके हम नंबर ऑफ़ एलिमेंट्स डिलीट करते हैं यहीं पे जाके नंबर ऑफ़ एलिमेंट्स ऐड करते हैं तो यहां हम ऐड कर सकते हैं लेट्स सपोज मुझे 101 ऐड करना है और 102 ऐड करना है तो ये एरे कैसे चेंज होगा इस एरे के अंदर इंडेक्स रो और इंडेक्स वन तो वैसे ही रहेंगे इंडेक्स रो और इंडेक्स वन तो वैसे का वैसा रहेगा उसके अंदर कोई चेंज नहीं आएगा इंडेक्स टू के पास जाके दो एलिमेंट डिलीट हो जाएंगे तो कौन-कौन डिलीट होगा टू वाला एलिमेंट डिलीट हो जाएगा थ्री वाला एलिमेंट दो एलिमेंट डिलीट हो गए और फिर क्या होगा इस इसी इंडेक्स टू पे आके हम अपने नए एलिमेंट्स को ऐड कर देंगे जितने भी नए एलिमेंट्स हमने पास किए हैं तो हम यहां पे ऐड कर देंगे 101 को हम यहां पे ऐड कर देंगे 102 को और और भी होते तो उनको भी ऐड कर देते तो ये इंडेक्स टू हो जाएगा ये इंडेक्स थ्री हो जाएगा और फिर जो बाकी के बच गए एलिमेंट्स एरे में फिर वो सारे आ जाते हैं यहां पे फाइव आ जाएगा सिक्स आ जाएगा सेवन आ जाएगा तो इस तरीके से हमारा स्लाइस काम करता है प्लाइस को एलिमेंट्स ऐड करने के लिए भी यूज़ किया जा सकता है डिलीट करने के लिए भी रिप्लेस करने के लिए भी तो एक बार इसे कोड के अंदर भी देख लेते हैं लेट्स क्रिएट अ न्यूमेरिकल एरे इसको एरे नाम दे देते हैं इसके अंदर वी हैव एलिमेंट्स 1 2 3 4 5 6 एंड 7 तो जो अभी मैंने आपको एक्सप्लेन करके दिखाया उसी को मैं आपको शो करके दिखाती हूं एरे डॉट स्लाइस मुझे इंडेक्स टू पे जाके दो एलिमेंट्स को डिलीट करना है 101 को ऐड करना है 102 को ऐड करना है सेव कर लिया रिफ्रेश किया अब अपने एरे को फाइनल एरे जो आया रिफ्रेश कर लेते हैं फाइनल एरे को प्रिंट करवा फाइनल एरे के अंदर क्या आया ट इंडेक्स टू प 101 इंडेक्स 3 प 102 फिर 567 ये वही सेम आउटपुट है जिसको अभी हमने कैलकुलेट करके दिखाया तो स्लाइस को अलग-अलग काम करने के लिए यूज कर सकते हैं लेट्स सपोज स्लाइस से इसको कॉमें आउट कर देते हैं स्लाइस से हम सिर्फ कोई एलिमेंट ऐड करना चाहते हैं हमें कुछ डिलीट नहीं करना हमें सिर्फ एलिमेंट को ऐड करना है या इसे कह सकते हैं ऐड करना है एलिमेंट को व्ट वी कैन डू इज एरे डॉट स्लाइस फॉर एग्जांपल मुझे टू के बाद 10 ऐड करना है तो डॉ स्लाइस टू कहां पे है टू है इंडेक्स वन पे थी कहां पे है थ्री है इंडेक्स टू पे तो मुझे कहां पे चाहिए 101 मुझे 101 चाहिए इंडेक्स नंबर टू के ऊपर मैं क्या करूंगी इंडेक्स टू पास करूंगी उसके बाद कितने एलिमेंट्स को डिलीट करना है रो एलिमेंट्स को डिलीट करना है और कहां पे ऐड करना है वैल्यू या और क्या वैल्यू ऐड करनी है वैल्यू ऐड करनी है 101 सेव किया रिफ्रेश किया अब एरे क्या होगा माय एरे माय एरे विल बी इक्वल टू 1 2 एंड 101 मैंने क्या किया टू के बाद 101 ऐड करना है तो जिस इंडेक्स पे आप चा चाहते हो वो वैल्यू ऐड हो वो इंडेक्स आपको पास करना पड़ेगा तो टू के बाद वाला इंडेक्स मैंने पास किया व्हिच इज द नंबर टू इंडेक्स टू का इंडेक्स क्या था वन था थ्री का इंडेक्स क्या था टू था तो सेकंड इंडेक्स पे जाके जीरो आइटम्स को डिलीट करो और 101 इस वैल्यू को ऐड कर दो अब लेट्स सपोज मुझे किसी एलिमेंट को डिलीट करने का काम करना है हम मल्टीपल एलिमेंट्स भी डिलीट कर सकते हैं एक एलिमेंट भी डिलीट कर सकते हैं लेट्स इसे कॉमेंट आउट कर देते हैं लेट्स ट्राई टू डिलीट दिस एलिमेंट फोर तो फोर का बस इंडेक्स पता होना चाहिए हमें फोर का इंडेक्स क्या है थ्री है मैं कर सकती हूं एरेड स्लाइस इंडेक्स नंबर थ्री पे जाके एक एलिमेंट को डिलीट कर दो इसको सेव कर लेते हैं एंड रिफ्रेश करते हैं अब एरे आ गया एरे के अंदर क्या हुआ नंबर फोर वाला आइटम हमारे लिए डिलीट हो गया हम आइटम्स को रिप्लेस करने के लिए भी यूज कर सकते हैं वी कैन रिप्लेस एन एलिमेंट फॉर एग्जांपल मुझे इस फोर को 104 से रिप्लेस करना है कैसे करेंगे लॉजिक यह होगा कि एरे डॉट स्लाइस कर दो इंडेक्स नंबर तीन पे जाके एक एलिमेंट को डिलीट कर दो और वहीं पे 10 इस एलिमेंट को ऐड कर दो तो एक एलिमेंट डिलीट तो होगा पर उसी की खाली जगह में 101 ऐड हो जाएगा सेव किया रिफ्रेश किया एरे को प्रिंट करवाएंगे तो 1 2 3 4 की जगह 101 आ गया फिर 5 67 तो इस तरीके से एलिमेंट्स को ऐड करना हो डिलीट करना हो रिप्लेस करना हो तीनों ऑपरेशंस के लिए हम अपने स्प्लाइसोजोम्स होते हैं एक चीज ट्राई करते हैं यहां पे रिफ्रेश किया एरे हमारे पास आ गया दिस इज माय एरे अब एरे डॉट स्लाइस अगर मैंने किया और उसके अंदर लेट्स सपोज मैंने इंडेक्स फोर पास कर दिया और जैसे ही एंटर करेंगे तो इस बार एरे के अंदर चेंज हो गया एरे के अंदर क्या चेंज हुआ जैसे ही हम कोई भी इंडेक्स पास करते हैं स्लाइस तो ये स्लाइस की तरह एक्ट करने लगेगा यानी इंडेक्स नंबर फोर के बाद वाले जो एलिमेंट्स थे उनका एरे मुझे रिटर्न करके दे देगा अब ओरिजिनल एरे के अंदर मेरे पास चेंज होकर आ गया यानी जब आप नंबर ऑफ आइटम्स कितने आइटम्स डिलीट करने हैं वो पास नहीं करोगे तो उसका मतलब क्या होता है उसका मतलब वो इस तरीके से समझेगा कि इस स्टार्टिंग इंडेक्स चार वाले इंडेक्स से स्टार्ट हो जाओ और जितने भी एलिमेंट्स हैं सबको डिलीट कर दो तो सबको जो डिलीट किया उसने एलिमेंट्स को वो उसने रिटर्न कर दिया एंड ओरिजिनल एरे के अंदर चेंज होके बाकी सारे जो आइटम्स हैं वो हमारे पास रह गए तो इस तरीके से स्लाइस के अंदर अगर हम सिर्फ एक इंडेक्स पास करते हैं तो उसका मतलब होता है उस इंडेक्स से लेके आगे के सारे एलिमेंट्स को डिलीट कर दो अगर हम कोई इंडेक्स पास नहीं करते जैसे एरे डॉट स्लाइस मैंने लिख दिया एंटर किया अब अगर मैं एरे को प्रिंट करवाऊं तो मेरे एरे के अंदर कोई चेंज नहीं आएगा मतलब स्लाइस में अगर कोई इंडेक्स पास नहीं किया तो इसका मतलब कोई भी आइटम हमारे लिए डिलीट नहीं होने वाला अब नेक्स्ट हम बात करने वाले हैं अपने एक और प्रैक्टिस क्वेश्चन के बारे में इस प्रैक्टिस क्वेश्चन के अंदर हम बेसिकली अपने एरे मेथड्स को यूज़ करने की कोशिश करेंगे आप चाहे तो पॉज कर सकते हैं यू कैन डू इट योरसेल्फ ट्राट योरसेल्फ और फिर हम आ जाएंगे अपने लेक्चर के ऊपर तो क्वेश्चन कह रहा क्रिएट एन एरे टू स्टोर कंपनी ये कंपनी के कुछ नाम है जो हमें स्टोर करने एक एरे की फॉर्म में सबसे पहला टास्क हमारे लिए है टू रिमूव द फर्स्ट कंपनी फ्रॉम दरे सबसे पहले तो अपने लिए एरे बना लेते हैं कोड प आ जाते हैं लेट्स क्रिएट द एरे लेट्स कॉल इट कंपनी कंपनीज के अंदर हमें सबसे पहले ब्लूमबर्ग को स्टोर कराना है फिर वी हैव माइक्रोसॉफ्ट फिर वी हैव u देन वी हैव ता है और दूसरा मेथड क्या होता है दूसरा मेथड होता है हमारे लिए शिफ्ट मेथड शिफ्ट मेथड क्या करता है स्टार्ट से डिलीट करता है तो यहां हम यूज़ कर सकते हैं अपने शिफ्ट मेथड को तो व्हेन आई डू कंपनीज ड शिफ्ट सेव किया रिफ्रेश किया अब मुझे कंपनीज की अगर मैं वैल्यू प्रिंट करवाऊं तो कंपनीज के अंदर ब्लूमबर्ग हमें नहीं दिखाई देगा क्योंकि उसने क्या किया स्टार्टिंग से एलिमेंट को डिलीट कर दिया सेकंड पार्ट की तरफ आते हैं सेकंड पार्ट कहता है रिमूव u एंड ऐड ला इन इट्स प्लेस यानी एरे के अंदर से मुझे इस u को हटाना है और इसकी जगह मुझे ओला लेके आना है तो बेसिकली हम रिप्लेस कर रहे हैं रिप्लेसमेंट कर रहे हैं और हमें पता है जब भी हमें रिप्लेसमेंट करनी होती है हम किसे यूज कर सकते हैं जब भी एलिमेंट्स को रिप्लेस करना है हम अपने स्पलाइसेज बताना पड़ेगा क्या इंडेक्स है u का 0 1 2 इंडेक्स नंबर टू पे जाओ रिप्लेस करने के लिए क्या होता है एक एलिमेंट को डिलीट करो एक एलिमेंट को ऐड करो तो एक एलिमेंट को डिलीट करना है कौन से एलिमेंट को ऐड करना है ओला को ऐड करना है तो आ कैन राइट द सेम स्टेटमेंट या इसी के बाद कर लेते हैं कंपनीज के अंदर या इससे तो इंडेक्स चेंज हो जाएगा कंपनीज के अंदर जाके स्लाइस करना है इंडेक्स नंबर टू पे एक एलिमेंट को डिलीट करना है उसकी जगह ओला को ऐड करना है सेव किया रिफ्रेश किया तो कंपनीज के अंदर अब u की जगह वी विल फाइंड ओला हियर एट इंडेक्स नंबर टू थर्ड पार्ट की तरफ आ जाते हैं थर्ड पार्ट हमें कह रहा है ऐड amazononline.in एक होता है हमारा पुश मेथड एक होता है हमारा अनशिफ्ट मेथड पुश कहां ऐड करता है पुश ऐड करता है एंड में अनशिफ्ट कहां ऐड करता है अनशिफ्ट ऐड करता है स्टार्ट में हम पुश को यूज कर रहे होंगे पुश को यूज करने के लिए वी कैन राइट कंपनीज डॉट पुश डॉट पुश के अंदर आई कैन ऐड को यूज़ करते हैं तो आई होप कि अरेज को देखकर हमें अच्छा लगा होगा एक नया डाटा स्ट्रक्चर हमने सीखा है नई चीज सीखी है जावास्क्रिप्ट प्रोग्रामिंग के अंदर जिसे आगे जाके हम एक्सटेंसिवली यूज़ कर रहे होंगे तो आज के लेक्चर के लिए इतना ही प्रोग्रामिंग के अंदर काफी नई-नई चीजें हमने आज और सीखी हैं इन्हें आप जाके प्रैक्टिस कर सकते हैं यू कैन रीड अबाउट मोर डिफरेंट एरे मेथड्स ऑन द एमडी एंड डॉक्यूमेंटेशन जिसका आपके साथ लिंक मैंने शेयर किया हुआ है जिसके बारे में आपको मैंने बताया हुआ है तो वहां जाके हम और ज्यादा मेथड्स के बारे में चाहे तो पढ़ सकते हैं हाय एवरीवन तो अब हम स्टार्ट करने वाले हैं अपने फंक्शंस के साथ फंक्शंस क्या होते हैं जावास्क्रिप्ट के अंदर फंक्शंस हमारा एक ऐसा ब्लॉक ऑफ कोड होता है जो हमारे लिए कुछ स्पेसिफिक टास्क हमें परफॉर्म करके देता है फॉर एग्जांपल अजूम करते हैं हम मोदी जी की जिंदगी के बारे में बात कर रहे हैं तो यह हैं मोदी जी एंड इनको अगर कोई भी काम कराना है तो इनके पास हो सकता है कोई पर्सनल सेक्रेटरी हो तो अगर इन्हें कोई भी अपनी मीटिंग सेटअप करनी होगी तो वह काम क्या करेगा वो पर्सनल सेक्रेटरी को बुलाएंगे और मीटिंग सेटअप करवा लेंगे मान लेते हैं एक हफ्ते बाद एक महीने बाद दोबारा कोई मीटिंग सेटअप करनी होगी तो हर बार क्या किया जाएगा पर्सनल सेक्रेटरी को कॉल करके मीटिंग को सेटअप किया जाएगा हो सकता है इनकी टीम के अंदर एक ड्राइवर भी हो अगर कभी भी गाड़ी चलानी होगी मान लेते हैं एक जगह से दूसरी जगह जाना होगा तो क्या करेंगे हर बार ड्राइवर को बुलाएंगे काम करवाएंगे ड्राइवर को बुलाएंगे काम करवाएंगे उसी तरीके से अगर किसी को खाना बनाना होगा तो टीम के अंदर एक कुक होगा अगर कभी भी खाना चाहिए होता है ब्रेकफास्ट में डिनर में लंच में तो हर बार क्या किया जाएगा कुक को बुलाया जाएगा खाना बनवाया जाएगा कुक को बुलाया जाएगा खाना बनवाया जाएगा तो हमारा जो प्रोग्राम होता है उसके अंदर भी अगर ऐसा कोई ब्लॉक ऑफ कोड होता है अगर ऐसा कोई पीस हमारे पूरे प्रोग्राम का होता है जो कुछ स्पेसिफिक काम करता है उसका फिक्स मतलब है कि अगर इस ब्लॉक ऑफ कोड को बुलाया जाएगा तो ये वही सेम काम हमें करके देगा तो उसे हम क्या कहते हैं उसे हम फंक्शन कहते हैं और ये जो हमारे फंक्शंस होते हैं इन्हें हम एक बार क्रिएट करते हैं और फिर हम इन्हें कभी भी इवोक कर सकते हैं इवोक मतलब कॉल कर सकते हैं जैसे कुक है टीम के अंदर तो कुक को कॉल किया जा सकता है जब भी खाना बनवाना हो वैसे ही अगर हमारा कोड है तो कोड के अंदर एक पीस ऑफ कोड ऐसा होगा जो हमारा फंक्शन होगा और इस पीस ऑफ कोड को हम कभी भी बुला सकते हैं इवोक कर सकते हैं जब भी हमें वो स्पेसिफिक काम करवाना होगा एंड सबसे इंटरेस्टिंग बात तो यह है कि ऑलरेडी हम काफी सारे फंक्शंस को देख चुके हैं फॉर एग्जांपल अपने कोड में एक बार आ जाते हैं हमारे पास अपनी script.js फाइल है जिसको हमने अपनी index.htm के साथ कनेक्ट कर रखा है तो script.js के अंदर हम लिख सकते हैं console.log अगर हमें कुछ भी प्रिंट करवाना है अगर मुझे हेलो प्रिंट करवाना है मैंने ये लिख दिया अगर हमारे पास कुछ स्ट्रिंग है लेट्स सपोज वी हैव अ स्ट्रिंग कॉल्ड ए बी स ए बी स के ऊपर हम कोई मेथड अप्लाई कर सकते हैं टू अपर केस तो मैंने ये लिख दिया अगर हमारे पास कोई एरे है दो नंबर्स का तीन नंबर्स का इस तरीके से कोई एरे है और एरे के अंदर मुझे एक और एलिमेंट पुश करना है तो मैंने ये लिख दिया ये जो तीनों जो एग्जांपल है ये जो यहां पे लॉग है ये टू अपर केस है ये जो पुश है ये तीनों की तीनों फंक्शंस है फंक्शन यानी ऐसा पीस ऑफ कोड जो हमें वही सेम काम बार-बार परफॉर्म करके देता है जहां भी मैंने कंसोल के साथ डॉट लॉग लिख दिया ये क्या करेगा हमेशा कुछ भी लॉग करवा देगा कंसोल के ऊपर जहां भी किसी भी स्ट्रिंग के साथ टू अपर केस लिख दिया टू अपर केस का फिक्स्ड काम है कि इसे भाई लेटर्स को अपर केस के अंदर कन्वर्ट करना है अगर एरे के साथ पुश लिख दिया तो पुश का सेम काम है कि इसे हमारे एरे के अंदर एक नया जो एलिमेंट है या कपल ऑफ एलिमेंट्स है उन्हें पुश करना है उन्हें ऐड करना है तो ये फिक्स्ड पीस ऑफ़ कोड है टू अपर केस को स्ट्रिंग ए बी स के साथ भी लिख सकते हैं x वाज के साथ भी टू अपर केस को हम लिख सकते हैं इस तरीके से कभी भी टू अपर केस को हम कॉल कर सकते हैं जब भी हमें किसी भी स्ट्रिंग को अपर केस के अंदर कन्वर्ट करना हो और एक और एक्स्ट्रा चीज आप नोटिस करोगे जब भी फंक्शंस को लिखते हैं हम उनके साथ हम पैरेंस को यूज़ करते हैं यहां भी क्या करेंगे पैरेंस को यूज़ करेंगे ये फंक्शन को इवोक करने का तरीका होता है तो हम फंक्शन का नाम लिखते हैं और पैरेंस तो यहां फंक्शन को इवोक करना कॉल करने का मतलब है उस फंक्शन को यूज़ करना तो जब भी हम फंक्शंस को समझते हैं फंक्शंस के बारे में सोचते हैं फंक्शंस हमारे बेसिकली एक ऐसा ब्लैक बॉक्स की तरह इसको हम सोच सकते हैं दिस इज माय ब्लैक बॉक्स जिसके अंदर हम कुछ इनपुट दे सकते हैं उसको हम कुछ कमांड दे सकते हैं जैसे लॉग फंक्शन को पता है कि उसे कंसोल स्क्रीन के ऊपर कुछ लॉग करवाना है कुछ प्रिंट करवाना है पर क्या प्रिंट करवाना है वो हमें उसे पास करना पड़ेगा वो हमें उसे लिख के देना पड़ेगा कि ये मैसेज है इसको प्रिंट करवा के दे दो जैसे पुश फंक्शन को पता है एरे के अंदर कुछ नया एलिमेंट ऐड करना है पर क्या एलिमेंट ऐड करना है वो हमें उसे पास करना पड़ेगा तो जो भी इनपुट होता है उसे हम अपने पैरेंस के अंदर लिख कर भेज रहे होते हैं कि क्या इनपुट हम इसे देना चाहते हैं और फिर हमारा फंक्शन हमें कुछ काम करके देता है काम इज बेसिकली आवर आउटपुट हो सकता है फंक्शन कोई वैल्यू भी वापस हमें लाकर दे दे अभी के लिए उसको नहीं देखेंगे अभी के लिए ये सोचना है फंक्शन हमारा ऐसा ब्लैक बॉक्स होता है जो कुछ इनपुट लेता है और हमें कुछ काम करके देता है यानी कुछ आउटपुट रिटर्न करता है अब फंक्शंस को लिखा कैसे जाता है प्रोग्रामिंग के अंदर ये तो हो गए ऐसे फंक्शन जो ऑलरेडी लिखे हुए हैं जावा स्क्रिप्ट में हमें इन्हें लिखना नहीं पड़ा हमें नहीं बताना पड़ा कि कंसोल स्क्रीन पे प्रिंट करवाना है तो क्या प्रोसेस होगा बट हम खुद के भी भी फंक्शंस बना सकते हैं और मोस्ट ऑफ द जो प्रोग्रामिंग में होते हैं हम खुद के ही फंक्शंस बना रहे होते हैं तो खुद के फंक्शंस बनाने के लिए दो पार्ट होते हैं या दो स्टेप हमारा प्रोसेस होता है सबसे पहले हम फंक्शन की डेफिनेशन लिखते हैं और फिर हम उस फंक्शन को कॉल करते हैं फंक्शन की डेफिनेशन है बेसिकली जैसे मान लो कोई कंपनी है हायर कर रही है तो उसे बताना पड़ेगा मैं वेब डेवलपर हायर कर रही हूं तो मेरी जो वेब डेवलपर की रिक्वायरमेंट्स होंगी उन्हें ये ये स्किल्स आनी चाहिए उनका जो रोल है उसमें ये होगा अगर हम कोई कुक हायर कर रहे हैं तो कुक के लिए हमें बताना पड़ेगा अच्छा हम हमें चाइनीज जो डिशेस हैं चाइनीज जो क्विजन है उसे बनवाना है या हमें फ्रेंच डिशेस को बनवाना है तो उस तरीके से हमें बताना पड़ेगा जॉब डिस्क्रिप्शन में कि क्या काम करना है तो वो जो काम करना है कि काम होगा क्या वो हम बताते हैं फंक्शन डेफिनेशन के अंदर और काम करवाने के लिए हम फंक्शन को कॉल कर देते हैं जैसे कुक हमने हायर कर लिया वो हो गई फंक्शन डेफिनेशन बता के कि कुक की ये रिस्पांसिबिलिटीज होंगी जब एक्चुअली कुक को बुला के हम उससे कुछ खाना बनवा रहे हैं वो हो गई फंक्शन कॉल अब फंक्शन डेफिनेशन के लिए हम लिखते हैं अपना फंक्शन कीवर्ड ये हमारा रिजर्व वर्ड होता है एंड फिर हम अपने फंक्शन का का नाम लिखते हैं जैसे हम अपने वेरिएबल का कुछ भी नाम लिख सकते हैं वैसे ही हम अपने फंक्शन का भी कुछ भी नाम लिख सकते हैं फिर हम लगाते हैं दो पैरेंस और कर्ली ब्रेसे और ये जो कर्ली ब्रेसेज होते हैं ये भी हमारा एक ब्लॉक ऑफ कोड होता है ब्लॉक ऑफ कोड यानी दो कर्ली ब्रेसस के बीच में जो कोड लिखते हैं और फिर कर्ली ब्रेसस के बीच में हमें फंक्शन से जो भी काम करवाना है उसको हम लिख सकते हैं तो इस तरीके से हम अपने फंक्शन को डिफाइन करते हैं जावास्क्रिप्ट के अंदर तो एक बार एक फंक्शन को खुद के फंक्शन को लिखते हैं हम लिखेंगे शुरुआत करेंगे अपने फंक्शन कीवर्ड के साथ हम इस फंक्शन को कुछ भी नाम दे सकते हैं लेट्स कॉल इट माय फंक्शन ये मेरा फंक्शन है हमने पैरेंस लगाए उसके बाद लेट्स सपोज मेरा जो फंक्शन है वो प्रिंट करवाता है अ लेट्स राइट वेलकम टू अपना कॉलेज इस तरीके का कुछ प्रिंट करवाता है एंड नेक्स्ट लाइन में एक और काम करवाता है नेक्स्ट लाइन में प्रिंट करवाता है वी आर लर्निंग जेएस इस तरीके से इसने दो लाइने जो है प्रिंट करवा दी ये इसका काम हो गया इसे सेव कर सकते हैं जैसे ही हमने ये चीज लिख दी तो हमने क्या किया हमने अपने मेमोरी के अंदर अपने कोड के अंदर एक माय फंक्शन नाम का फंक्शन बना लिया इसे सेव कर लेते हैं एंड हम जा सकते हैं अपने फोल्डर पर फोल्डर में जाएंगे जहां जावास्क्रिप्ट फाइल है index.htm के ऊपर डबल क्लिक करेंगे तो हमारी फाइल हमारे लिए खुल जाएगी मैंने फाइल को ऑलरेडी खोला हुआ है डबल क्लिक करके मैंने इंस्पेक्ट भी खोला हुआ है इंस्पेक्ट के अंदर हमें कंसोल पे जाना है ऑलरेडी हम हर क्लास के अंदर देखते आ रहे हैं और कंसोल विंडो को हम लेफ्ट के अंदर शिफ्ट कर देते हैं अब कंसोल विंडो के ऊपर हम जाके हम देख सकते हैं कि हमारे लिए एज सच कुछ प्रिंट नहीं हुआ है मतलब हमने फंक्शन तो डिफाइन कर दिया उस उसके अंदर कसोल डलॉग वाली स्टेटमेंट्स भी लिखी हुई है पर स्क्रीन के ऊपर कुछ प्रिंट होकर नहीं आया वो इसलिए प्रिंट होके नहीं आया क्योंकि फंक्शन को सिर्फ डिफाइन करना काफी नहीं है डिफाइन करना तो मतलब आपने बता दिया जावास्क्रिप्ट को कि ये हमारा फंक्शन है और ये ये काम करेगा और उस फंक्शन से काम करवाने के लिए हमें उस फंक्शन को कॉल करना पड़ता है और फंक्शन को कॉल करने के लिए हम लिखते हैं फंक्शन का नाम एंड फिर उसके साथ पैरेंस एंड फिर अपना सेमीकलन दिखाने के लिए कि एक स्टेटमेंट कंप्लीट हो गई अब जब फंक्शन को डिफाइन करते हैं तो इस तरीके से इसके बाद में हमें सेमीकलन लगाने की जरूरत नहीं पड़ती क्योंकि बाय डेफिनेशन जनरली जो हमारा ब्लॉक ऑफ कोड होता है यानी दो कर्ली ब्रेसे दो कर्ली ब्रेसस का मतलब होता है ये इतना पार्ट सीमित है इसके बाद आपको सेमी कोलन लगाने की जरूरत नहीं है तो अब फंक्शन को कॉल करने के लिए हम लिखेंगे माय फंक्शन उसके बाद पैरेंस एंड अपना सेमीकलन सेव कर लेते हैं रिफ्रेश किया तो इस बार हमारे लिए दोनों चीजें प्रिंट होके आई अगर ये जो दो चीजें प्रिंट होने का काम मुझे दो बार करवाना होता तो कुछ नहीं करना था बस फंक्शन को दो बार कॉल कर दो सेव किया रिफ्रेश किया ये फर्स्ट टाइम फंक्शन कॉल हुआ ये हमारा सेकंड टाइम फंक्शन कॉल हुआ अगर ये इसी सेम फंक्शन को मुझे पांच बार कॉल करवाना था तो कुछ नहीं करना था बस पांच बार कॉलिंग स्टेटमेंट लिखनी थी एक चीज आप नोटिस करोगे ये जो अंदर दो लाइने हैं या यहां पे कितनी भी लाइने हो सकती थी फॉर एग्जांपल यहां पर चार लाइनें होती और मैंने दो बार फंक्शन को कॉल करवाया सेव करेंगे रिफ्रेश करेंगे तो आई वुड हैव गोटन एट लाइंस ऑफ कोड पर मैंने यहां पे एक ही बार सिर्फ चार लाइने लिखी तो फंक्शंस का एक और स्पेसिफिक काम ये भी होता है कि कोड के अंदर आपको अगर ऐसा कुछ कोड का पीस ऑफ कोड आप नोटिस करो जो रिपीट हो रहा है बार-बार बार-बार आपको लिखना पड़ रहा है तो उसे आप एक फंक्शन के अंदर कन्वर्ट कर सकते हो फॉर एग्जांपल लेट्स सपोज यू आर मेकिंग अ गेम आप कोई 3d गेम बना रहे हो आप कोई 2d गेम बना रहे हो आपके जो कैरेक्टर है होना हमारे कोड के अंदर जब चीजें रिपीट होती है उससे क्या होता है रिडंडेंसी आती है रिपीटेशन आती है और रिपीटेशन किसी भी अच्छे कोड के लिए अच्छी नहीं है जो अच्छे डेवलपर्स होते हैं वो क्या करते हैं अपने कोड के अंदर चीजें कम रिपीट करने की कोशिश करते हैं बार-बार कुछ रिपीट हो रहा होता है उसको फंक्शन के अंदर कन्वर्ट करते हैं तो हमें भी क्या बनना है हमें भी अच्छा डेवलपर बनना है तो कोड के अंदर रिडंडेंसी हमें मिनिमाइज करनी होती है खैर ये तो हो गई थोरेट्स ना भी कह सकते हैं अब ये तो हो गया हमारा ऐसा फंक्शन जिसका जो आउटपुट है वो किसी इनपुट पे डिपेंड नहीं करता आपको कुछ भी अगर प्रिंट करवाना है उसके लिए हमें कोई स्पेसिफिक इनपुट नहीं चाहिए पर मान लो मुझे कोई स्पेसिफिक मैसेज ही है जिसको प्रिंट करवाना है ये मेरा मैसेज है जिसको मुझे प्रिंट करवाना है तो हर बार हम क्या करेंगे कसोल डलॉग करके हम यहां लिख सकते हैं अपना मैसेज कि मुझे हर बार इसी मैसेज को प्रिंट करवाना है तो ये मेरे इनपुट के ऊपर डिपेंड करेगा तो इनपुट्स डिफाइन करने के लिए हम इन पैरेंस के बीच में अपने इनपुट वेरिएबल को लिख लेते हैं और ये जो हमारा वेरिएबल होता है इसे हम कहते हैं अपना पैरामीटर तो जितने भी हमारे इनपुट्स होते हैं फंक्शन के अंदर जो इनपुट होता है उसे हम अपना फंक्शन का पैरामीटर कहते हैं पैरामीटर यानी जो इनपुट वेरिएबल है जो हमारे पास आ रहा होगा और अब अगर मैं माय फंक्शन को कॉल करूं तो माय फंक्शन को सिर्फ इतना लिखकर कॉल करना काफी नहीं होगा सेव करेंगे रिफ्रेश करेंगे वी विल गेट अनडिफाइंड अनडिफाइंड क्यों प्रिंट होके आ रहा है क्योंकि हमने मैसेज को कभी भेजा ही नहीं मैसेज कभी गया ही नहीं तो यहां पे वो मैसेज को तो प्रिंट करवा देगा पर जिस वेरिएबल के अंदर कोई वैल्यू ही नहीं है वो क्या होगा अनडिफाइंड होगा तो इसीलिए माय फ फंक्शन के अंदर मुझे कुछ मैसेज भेजना पड़ेगा मेरा मैसेज कुछ भी हो सकता है आई लव जावास्क्रिप्ट सेव कर देते हैं रिफ्रेश कर देते हैं तो वही चीज मेरे लिए प्रिंट होकर आ जाएगी तो यहां पे जो हमारा पैरामीटर होता है वो हम फंक्शन कॉल के अंदर पैरेंस के अंदर ही लिखकर पास कर रहे होते हैं और यहां पर क्या करेंगे यहां पर इसी सेम पैरामीटर को हम आर्गुमेंट कह देते हैं तो पैरामीटर और आर्गुमेंट सेम ही चीज होती है फंक्शन डेफिनेशन के अंदर जिस वेरिएबल को हम यूज़ कर रहे हैं उसको पैरामीटर कह देते हैं और फंक्शन कॉल के अंदर जिस वैल्यू को हम पास कर देते हैं उसे हम आर्गुमेंट कह देते हैं पर इनको जनरली लोग इंटरचेंजेबली भी यूज़ कर लेते हैं आपकी मर्जी आप यूज़ करना चाहो तो बट टेक्निकल टर्म्स जो सही तरीका है लिखने का वो यही है कि फंक्शन डेफिनेशन के अंदर जो वेरिएबल होता है वो पैरामीटर होता है कॉल के अंदर जो वैल्यू पास करते हैं उसको आर्गुमेंट कहते हैं बाकी बात दोनों जगह सेम ही चीज की हो रही है अब हम चाहते तो मल्टीपल आर्गुमेंट भी पास कर सकते थे जैसे यहां पर मैं कोई और वेरिएबल पास कर देती लेट्स सपोज आई पास्ड अ वैल्यू 100 और यहां पे उसे दूसरे वेरिएबल के अंदर स्टोर करा लेते तो कॉमा से सेपरेट करके हम मल्टीपल इनपुट्स ले सकते हैं अब इस इनपुट को हम किस तरीके से यूज करें किसी भी तरीके से यूज कर सकते हैं फॉर एग्जांपल मेरी जो स्ट्र स्ट्रिंग है मैसेज वाली स्ट्रिंग उसको मैंने मल्टीप्लाई कर दिया n के साथ लेट्स सपोज इससे क्या हमारे पास आउटपुट निकल के आता है सेव किया रिफ्रेश किया तो हमारे पास एक एरर आ रहा है व्हिच इज ए ए ए ए जो एरर होता है उसका मतलब होता है नॉट अ नंबर नॉट अ नंबर मतलब इसका जो आउटपुट निकल के आया दिस इज नॉट अ नंबर दिस इज नॉट वैलिड यू कांट डू इट तो इस तरीके से हम अपने नंबर को अपनी स्ट्रिंग से मल्टीप्लाई नहीं करेंगे अब ये तो हो गया बहुत सिंपल सा एग्जांपल एक और एग्जांपल लेते हैं लेट्स क्रिएट अ फंक्शन जो दो नंबर्स का सम कैलकुलेट करने के काम आता है हमें लेट्स सपोज हमारा कोई कोड है जिसमें बार-बार बार-बार हमें दो नंबर्स का सम कैलकुलेट करना पड़ रहा है कभी हमें 4 + 5 का सम कैलकुलेट करना पड़ रहा है कभी हमें 7 + 8 का सम कैलकुलेट करना पड़ रहा है इस तरीके से बार-बार हमारे कोड के अंदर लेट्स सपोज हमें सम कैलकुलेट करना पड़ रहा है तो हम एक फंक्शन बना सकते हैं वी कैन कॉल इट सम सम के अंदर दो नंबर्स का सम कैलकुलेट होगा तो वो दो नंबर्स आने चाहिए इसके अंदर इनपुट में तो इनपुट में हम दो नंबर्स ले सकते हैं a एंड बी इनको हम x एंड y भी बोल सकते हैं जो हमारा मन करे और फिर क्या कर सकते हैं हम कसोल डलॉ करके इन दो नंबर्स के सम को प्रिंट करवा सकते हैं इसको सेव कर लिया रिफ्रेश किया रिफ्रेश किया अब इसे कॉल करना पड़ेगा तो यहीं पे कंसोल के अंदर कॉल कर लेते हैं लेट्स सपोज वी वांट टू कैलकुलेट द सम ऑफ वन एंड टू थी आ गया हमारे पास उसी तरीके से 121 एंड 3892 इस नंबर का सम कैलकुलेट कर रहे हैं 1013 हमारे पास आ गया तो इस तरीके से जब भी हमें दो नंबर्स का सम कैलकुलेट करना हुआ हम अपने सम फंक्शन को इवोक कर सकते हैं उसे कॉल कर सकते हैं अब ये तो हो गया वो फंक्शन जो कुछ भी काम हमें करके दे रहा है फंक्शंस कुछ इनपुट लेते हैं तो वो कुछ वैल्यू भी रिटर्न कर सकते हैं फंक्शन जो है हमें कुछ वैल्यू रिटर्न करके वापस करके भी दे सकता है उसके लिए हमें अपने रिटर्न कीवर्ड को यूज़ करना होता है जैसे फॉर एग्जांपल ये जो सम फंक्शन है ये वैल्यू को प्रिंट ना करवाए ये उस वैल्यू को बस रिटर्न करके दे दे तो यहां क्या कर सकते हैं यहां एक वेरिएबल बना सकते हैं सम और उसके अंदर x + y की वैल्यू हम कैलकुलेट कर सकते हैं या कंफ्यूजन ना हो जाए सेम नेम से तो इसे s बोल देते हैं s के अंदर x + y की वैल्यू कैलकुलेट हो सकती है और फिर इस फंक्शन से वैल्यू रिटर्न करने के लिए हम अपना रिटर्न कीवर्ड लिखते हैं तो रिटर्न कीवर्ड भी एक रिजर्व्ड कीवर्ड होता है जिसका काम होता है वैल्यूज को वापस भेजना वैल्यूज को रिटर्न करना फंक्शन से और ये s वाली वैल्यू को रिटर्न कर सकता है रिटर्न कीवर्ड जो है हमेशा a की वैल्यू रिटर्न कर सकते हैं वो एक वैल्यू एरे भी हो सकता है जिसके अंदर बहुत सारी वैल्यूज हो पर एट दी एंड जाएगा एक ही वेरिएबल तो आप कोई स्ट्रिंग रिटर्न कर सकते हो कोई नंबर रिटर्न कर सकते हो कोई ऑब्जेक्ट रिटर्न कर सकते हो कोई एरे रिटर्न कर सकते हो पर एट द एंड एक ही रिटर्न वैल्यू आपको रिटर्न करनी है तो यहां पर सेव कर लेते हैं जैसे ही हम सम ऑफ x या सम ऑफ़ थ एंड 4 को कॉल करेंगे तो इस बार कुछ भी प्रिंट नहीं होगा रिफ्रेश किया हमारी स्क्रीन खाली है क्योंकि कहीं भी कसोल डलॉ वाली स्टेटमेंट नहीं आ रही पर यहां क्या होगा सम ऑफ़ थ्र एंड 4 हमारे लिए एक वैल्यू रिटर्न करके देगा तो इसे कहीं पे स्टोर करा लेते हैं लेट वैल्यू इज इक्वल टू दिस वैल्यू और फिर हम इस वैल्यू को प्रिंट कर सकते हैं console.log वैल्यू सेव कर लेते हैं रिफ्रेश कर लेते हैं तो हमारे पास वैल्यू आ गई सेन के इक्वल तो इस तरीके से कोई भी वैल्यू फंक्शन से रिटर्न हो सकती है एंड उसे हम कहीं भी किसी भी नए वेरिएबल के अंदर सेव करवा सकते हैं फिर उसे यूज कर सकते हैं एक और इंपॉर्टेंट चीज टू नोट कि जैसे ही कोई फंक्शन रिटर्न कर देता है उसके बाद अगर आपने कुछ भी कोड लिखा लेट्स सपोज हम यहां कसोल डलॉग लिख देते हैं आफ्टर रिटर्न ये हमारी कसोल डलॉग की स्टेटमेंट हो गई और एक स्टेटमेंट यहां लिख देते हैं बिफोर रिटर्न ये रिटर्न से पहले ये रिटर्न के बाद तो यहां वीएस कोड तो पहले ही आपको इंडिकेट कर रहा है वीएस कोड के अंदर लिखोगे तो यहां धुंधली सी चीज आ रही है मतलब धुंधली सी हमारी लाइन हो गई है एंड यू इफ यू हर ओवर इट इट शोज अनरीचेबल कोड डिटेक्टेड अनरीचेबल कोड यानी यह कोड कभी एग्जीक्यूट नहीं होगा इस कोड को कभी रन ही नहीं किया जाएगा ये जो लाइन ऑफ कोड है इसको सेव करके रिफ्रेश करते हैं हमारे पास प्रिंट होके आ रहा है बिफोर रिटर्न हमारे पास सेवन प्रिंट हो के आ रहा है पर कभी भी आफ्टर रिटर्न प्रिंट होके नहीं आएगा तो एक बार आपने किसी भी फंक्शन से रिटर्न कर दिया उसके बाद कुछ भी आप कोड के अंदर लिखें वो कभी एग्जीक्यूट नहीं होता इसीलिए जनरली रिटर्न स्टेटमेंट के बाद हम कुछ भी नहीं लिखते हैं अपने फंक्शन के अंदर तो फंक्शन कैसे काम करता है ऊपर से लेके नीचे तक काम करता है पहले ये स्टेटमेंट एग्जीक्यूट होगी फिर ये ये स्टेटमेंट एग्जीक्यूट होगी तो प्रिंट हो गया बिफोर रिटर्न फिर ये स्टेटमेंट एग्जीक्यूट होगी तो रिटर्न s से क्या होगा हमारी s की वैल्यू सम की वैल्यू रिटर्न हो जाएगी सम की वैल्यू कहां रिटर्न होगी सम की वैल्यू वहां रिटर्न होगी जहां उसको कॉल किया गया था तो वहां पे हम वैल्यू के पास आ गए अब नीचे का जो काम है वो स्टार्ट हो जाएगा तो कभी भी रिटर्न के बाद वाला कोड एग्जीक्यूट नहीं होता तो फंक्शन की अगर आपको कहीं भी रिटर्न लिखना है फंक्शन में वो जनरली हमारी लास्ट लाइन होती है तो हमारी फंक्शन की जो सेकंड टाइप ऑफ डेफिनेशन थी वो हो जाएगी कि आप फंक्शन कीवर्ड लिखते हैं फिर हम फंक्शन का नाम लिखते हैं फिर अपने पैरामीटर्स न करते हैं कॉमा से सेपरेट करके और फिर अपने ब्लॉक ऑफ कोड के अंदर कुछ भी काम कर सकते हैं यह काम कुछ नॉर्मल कैलकुलेशंस भी हो सकती हैं यह काम हो सकता है हमने फाइनली किसी वैल्यू को रिटर्न कर दिया वो भी एक वैलिड काम है जिसको हम करवा सकते हैं अब हमारे जो फंक्शन के अंदर जितने भी पैरामीटर्स होते हैं हमारे लेट्स सपोज हमारे पास सम फंक्शन के अंदर x एंड y पैरामीटर है अब ये जो x एंड y पैरामीटर है ये एक्ट करेंगे एज दिस फंक्शन लोकल वेरिएबल ये फंक्शन के लोकल वेरिएबल की तरह एक्ट करते हैं लोकल वेरिएबल यानी ऐसा वेरिएबल जो इसी फंक्शन इसी के ब्लॉक ऑफ कोड के अंदर आता है मतलब इसी फंक्शन के स्कोप में रहता है स्कोप की बात हमने पहले भी की थी स्कोप का मतलब बेसिकली होता है वो वेरिएबल कहां तक जिंदा है तो ये जो पैरामीटर्स आते हैं किसी भी फंक्शन के अंदर ये लोकल वेरिएबल बन जाते हैं फंक्शन के तो मतलब ये फंक्शन के कर्ली ब्रेसस के अंदर तक ही जिंदा है उसके बाद ये एजिस्ट नहीं करेंगे फॉर एग्जांपल अगर इस फंक्शन को कॉल करने के बाद यहां पर हम प्रिंट करवाने की कोशिश करें कसोल डलॉग x यहां क्या आएगा हमारे पास अनडिफाइंड आएगा शश करेंगे वी विल हैव एन एरर इट सेज x इज नॉट डिफाइंड कौन सी लाइन पे लाइन नंबर 11 पे तो ये हमारी लाइन नंबर 11 है जहां पर x डिफाइन नहीं है क्यों क्योंकि x तो सम फंक्शन का पार्ट है पर अगर यहां पर हम प्रिंट करवाए console.log x तो यहां पे प्रिंट हो जाएगा रिफ्रेश करेंगे x की वैल्यू आ गई x = 3 तो इस तरीके से हमारे पास प्रिंट होकर आ जाएगी वैल्यू तो यहां से अपने नोट्स में एक चीज हमें लिख लेनी है कि जो हमारे फंक्शन के पैरामीटर्स होते हैं इसको मैं शॉर्ट में लिख रही हूं पैराम्स व्हाट आर दे दे आर लाइक लोकल वेरिएबल लोकल वेरिएबल ऑफ फंक्शन एंड इनका क्या स्कोप होता है इनके पास ब्लॉक स्कोप होता है ब्लॉक स्कोप कहने का मतलब कहां तक जिंदा रहते हैं ब्लॉक तक जिंदा रहते हैं कौन से ब्लॉक तक जिंदा रहते हैं फंक्शन के ब्लॉक तक जिंदा रहते हैं तो ये चीज इंपॉर्टेंट है इसको हमें याद रखना है तो ब्लॉक का मतलब होता है अगर आपने कोई वेरिएबल लिखा है या कुछ और लिखा है तो वो कहां तक जिंदा है तो हमारे जो फंक्शन के पैरामीटर्स होते हैं उनका ब्लॉक स्कोप होता है और वो ब्लॉक तक ही जिंदा रहते हैं नेक्स्ट हम बात करने वाले हैं अबाउट एरो फंक्शन एरो फंक्शन फंक्शंस को ही लिखने का एक कंपैक्ट तरीका होता है कंपैक्ट यानी छोटा तरीका होता है एक दो फंक्शन बनाकर देखते हैं तो वी कैन मेक फंक्शन फ्रॉम स्टार्टिंग एक हम सम फंक्शन बना लेते हैं तो यह हमारा फंक्शन हो गया सम जिसके पास दो नंबर आते हैं ए और बी और ये क्या करता है ए और बी का सम रिटर्न कर देता है a प् बी उसी तरीके से हम एक और फंक्शन बना सकते हैं वी कैन कॉल इट मल इसको मल्टीप्लिकेशन फंक्शन हम बना सकते हैं तो मल्टीप्लिकेशन के लिए या मल्टीप्लिकेशन फंक्शन इसके अंदर a एंड b दो नंबर्स आएंगे तो ये फंक्शन हमारे लिए रिटर्न करेगा a * बा b तो ये इसने रिटर्न कर दिया तो इस तरीके से बहुत सारे फंक्शंस हैं जो बनाए जा सकते हैं अब इन्हीं फंक्शंस को एक और कंपैक्ट तरीके से छोटे तरीके से लिखने का तरीका होता है हमारे एरो फंक्शंस एरो फंक्शंस हम कैसे लिखते हैं एरो फंक्शंस के अंदर सीधा हम अपने पैरेंस लगाते हैं और पैरेंस के अंदर हम अपने पैरामीटर्स यूज़ करते हैं और पैरामीटर्स के बाद हम एक एरो देते हैं एरो कैसे देते हैं पहले हम लिखते हैं इक्वल टू उसके बाद ग्रेटर दन का साइन बिना किसी स्पेस के तो इसको क्या कह देते हैं हम ये हमारे एरो फंक्शन का साइन हो जाता है हम लिखते हैं पैरेंस फिर एरो और फिर एक ब्लॉक ऑफ कोड बनाते हैं कर्ली ब्रेसस से और उसके अंदर अपना काम लिखते हैं तो बेसिकली ये एरो फंक्शन क्या कर रही है बता रही है ये हमारे इनपुट आएंगे और इन इनपुट के ऊपर क्या काम करना है वो हमारे लिए एरो हमारे पास बता के दे रही है तो इतना जो पार्ट होता है इसको हम अपना एरो फंक्शन कह देते हैं और इस एरो फंक्शन की वैल्यू को चाहे तो हम किसी एक वेरिएबल के अंदर स्टोर कर सकते हैं तो जो हमारे फंक्शंस होते हैं उनको भी वेरिएबल के अंदर स्टोर किया जा सकता है तो इसका एक एग्जांपल देखते हैं हम सम फंक्शन को रीक्रिएट करेंगे बट यूजिंग एरो तो यहां पे यहां आ जाते हैं सम फंक्शन का एरो वर्जन क्या होगा हम लिखेंगे पैरेंस पैरेंस के अंदर दो वेरिएबल आएंगे a और b एंड फिर हम लिखेंगे अपना एरो इक्वल टू एंड ग्रेटर दन एंड उसके बाद ब्लॉक बना के फिर हम अपना काम कर सकते हैं लेट्स सपोज हमारा काम अभी करके दे रहा है हमें a + b की वैल्यू रिटर्न करके दे रहा है इतना हमने लिख दिया इसको सेव कर लेते हैं तो ये हमारा क्या बन गया ये हमारा एक एरो फंक्शन बन गया अगर रिफ्रेश करेंगे अपने कोड को तो एज सच कुछ प्रिंट नहीं होगा क्योंकि इस एरो फंक्शन को हमने यहां पे लिख तो दिया पर इसको एग्जीक्यूट नहीं किया अभी इसको एग्जीक्यूट करने के लिए हमें इसे किसी वेरिएबल के अंदर स्टोर करना पड़ेगा तो यहां पे हम कोई वेरिएबल बना सकते हैं कॉन्स्ट इसको हम कह सकते हैं एरो सम तो एरो सम ये जो वेरिएबल होगा ये अब एक फंक्शन बन जाएगा इसको सेव कर लेते हैं रिफ्रेश करते हैं और अपने एरो सम को एक बार प्रिंट करवा के देखते हैं तो जैसे ही हम अपने एरो सम वेरिएबल को प्रिंट करवाएंगे कंसोल के अंदर वो क्या करेगा वो हमें उसकी डेफिनेशन लाके दे देगा जैसे हमारे पास कोई नॉर्मल वेरिएबल होता है कॉस्ट x = 5 रिफ्रेश करते हैं x को प्रिंट करवाते हैं x क्या करेगा अपनी वैल्यू दे देगा वैसे ही हमारा एरो सम क्या करेगा एरो सम अपनी वैल्यू दे देगा और एरो सम की वैल्यू के अंदर क्या है इसकी वैल्यू के अंदर एक पूरा का पूरा फंक्शन डेफिनेशन स्टोर्ड है तो ये क्या है ये एक्चुअली एक फंक्शन है अब इस एरो फंक्शन को एग्जीक्यूट करने का वही सेम तरीका होता है हम एरो सम अपने फंक्शन का नाम लिखेंगे और उसके अंदर कुछ वैल्यू को पास कर देंगे तो फंक्शन को एग्जीक्यूट कराने के लिए हमें पेंसिस के अंदर वैल्यू पास करनी होती तो ये क्या करेगा हमें हमारा सम रिटर्न करके दे देगा तो इस तरीके से हम किसी भी नॉर्मल फंक्शन का एक एरो फंक्शन वर्जन लिख सकते हैं और हमारे जो एरो फंक्शंस हैं दे आर पार्ट ऑफ़ मॉडर्न जावास्क्रिप्ट तो जो मॉडर्न जावास्क्रिप्ट के अंदर एक और नया फीचर इंट्रोड्यूस हुआ था दोज वर एरो फंक्शंस और जनरली अपनी जो मॉडर्न डे प्रोग्रामिंग होती है जावास्क्रिप्ट के अंदर उसके अंदर हम एरो फंक्शंस को ही लिखना प्रेफर करते हैं तो ये हमारा एरो फंक्शन हो गया अब मल्टीप्लिकेशन का एरो फंक्शन अगर हमें बनाना है तो सबसे पहले तो मैं आपको बोलूंगी पॉज करके खुद उसको करने की कोशिश करनी है उसके बाद अब मेरे साथ आप बना सकते हो तो यहां पर वी कैन राइट कॉन्स्ट हमारा एरो मल्टीप्लिकेशन इज इक्वल टू पेंसिस बनाएंगे a एंड b एरो बना लिया एंड उसके बाद यहां हम प्रिंट करवा सकते हैं console.log a * b को इसको सेव कर लेते हैं रिफ्रेश किया एंड अब एरो मल्टीप्लिकेशन की वैल्यू हम प्रिंट करवा सकते हैं पर इसको कॉल भी कर सकते हैं थ्री एंड फर को हमें मल्टीप्लाई करवाना है तो आंसर हो जाएगा 12 के इक्वल तो इस तरीके से एरो फंक्शन हमारे लिए काम करते हैं हम चाहे तो वैल्यू रिटर्न भी कर सकते हैं एरो फंक्शन से रिटर्न a मल्टी बा b इसका इसका मतलब ये नहीं है कि a मल्टीप्ला बा b की वैल्यू एरो मल्टीप्लिकेशन के अंदर जाके स्टोर हो जाएगी इसका मतलब ये है जब भी एरो मल्टीप्लिकेशन को कॉल किया जाएगा तब a मल्ला बा b की वैल्यू रिटर्न होगी सेव कर लेते हैं रिफ्रेश किया एरो मल्टीप्लिकेशन के अंदर अभी भी हमारा फंक्शन ही स्टोर हो रहा है पर इस बार इसे कॉल करेंगे थ्री एंड फोर को तो ये हमें वैल्यू रिटर्न कर देगा व्हिच विल बी इक्वल टू 12 तो इस तरीके से हमारे एरो फंक्शंस काम करते हैं और हम मल्टीपल काम के लिए अपने एरो फंक्शंस को क्रिएट कर सकते हैं ये चीज याद रखनी है एरो फंक्शन क्या है एरो फंक्शन राइट साइड वा वाला पार्ट है ये तो बस एरो फंक्शन की वैल्यू को हमने किसी वेरिएबल के अंदर स्टोर करा दिया तो ये क्या बन गया ये वेरिएबल ये हमारा एक फंक्शन वेरिएबल बन गया ऐसा वेरिएबल जिसके अंदर वैल्यू में एक फंक्शन स्टोर्ड है कल को हम चाहें तो एरो मल्टीप्लिकेशन के अंदर फाइव नॉर्मल वैल्यू भी स्टोर कर सकते हैं क्योंकि ये क्या है ये सिंपल वेरिएबल ही तो है सेव किया रिफ्रेश किया ओके कांस्टेंट था लेट्स से डिफाइन कर लेते हैं रिफ्रेश किया तो इस बार एरो मल्टीप्लिकेशन के अंदर फाइव वैल्यू आ गई तो ये एक नॉर्मल वेरिएबल है जिसके अंदर आज एक फंक्शन व है तो कल को कुछ और नॉर्मल वैल्यू भी स्टोर्ड हो सकती थी सो दिस इज हाउ आवर एरो फंक्शंस वर्क अब जनरली जो हमारे एरो फंक्शंस होते हैं इनको हम छोटे फंक्शंस के लिए यूज़ करते हैं एक तो हो सकता है हमारे पास ऐसा फंक्शन है जो बहुत सारा काम करके दे रहा है तीन चार पाच छह लाइन ऑफ कोड है उसके अंदर उन केसेस के लिए हम जनरली एरो फंक्शंस को प्रेफर नहीं करेंगे पर फॉर एग्जांपल हमारे पास मल्टीप्लिकेशन का काम है मेरे पास सम कैलकुलेट करने का काम है इस तरीके के अगर छोटे काम हमारे पास होते हैं तो हम एरो फंक्शन को यूज़ करते हैं तो एरो फंक्शन से यहां से क्या कर सकते हैं वी कैन रिटर्न आवर वैल्यू a प्लस b इसके अलावा हम कुछ प्रिंट करवाने के लिए भी एरो फंक्शन क्रिएट कर सकते हैं फॉर एग्जांपल आई कैन क्रिएट अ फंक्शन कॉन्स्ट प्रिंट हेलो हेलो मुझे प्रिंट करवाना है तो उसके लिए बिना कोई आर्गुमेंट लिए इस बार मुझे आर्गुमेंट की जरूरत नहीं है पैरामीटर्स की जरूरत नहीं है तो हम खाली पैरेंस भी लिख सकते हैं और फिर अपना एरो लगा सकते हैं कर्ली ब्रेसेज एंड यहां हम लिख सकते हैं console.log h तो बिना इनपुट के भी हमारा एरो फंक्शन हमें कुछ काम करके दे सकता है तो इस तरीके से हम अपने प्रिंट हेलो फंक्शन को लिख सकते हैं रिफ्रेश किया नाउ आई कैन एग्जीक्यूट माय प्रिंट हेलो मेरे पास हेलो प्रिंट होकर आ गया एंड जनरली हमारे पास सिंगल लाइन ऑफ कोड होता है तो हम इस कर्ली ब्रेसस को भी हटा सकते हैं सेव किया तो इस तरीके से हमारे फंक्शन की डेफिनेशन आ जाती है जिसके अंदर एक सिंगल लाइन ऑफ कोड है रिफ्रेश किया दोबारा से प्रिंट हेलो को प्रिंट करवा सकते हैं हेलो प्रिंट हो के आ जाएगा इसके अंदर कोई एरर नहीं है पर जनरली यहां पर हम प्रेफर करेंगे कि हम कर्ली ब्रेसस के अंदर ही अपने फंक्शन से काम करवाए सो दिस वाज ऑल अबाउट फंक्शंस एंड एरो फंक्शंस नेक्स्ट हम कुछ प्रैक्टिस क्वेश्चंस को सॉल्व करने वाले हैं सबसे पहला हमारा सवाल है क्रिएट अ फंक्शन यूजिंग द फंक्शन कीवर्ड दैट टेक्स अ स्ट्रिंग एज एन आर्गुमेंट एंड रिटर्न्स द नंबर ऑफ वोवेल्स इन द स्ट्रिंग वोवेल्स हमारे क्या होते हैं इंग्लिश के अंदर ए ई आई ओ यू ये हमारे पांच वोवेल्स होते हैं इंग्लिश के अंदर और हमें कोई भी स्ट्रिंग दी जाएगी फॉर एग्जांपल हमें स्ट्रिंग दी जा रही है हेलो तो हेलो के अंदर जो नंबर ऑफ वोवेल्स है उनको हमें प्रिंट करवाना है एक वॉवेल है हमारे पास ई एक है हमारे पास ओ तो हमारा जो फंक्शन है वो रिटर्न करें नंबर ऑफ वोवेल्स या काउंट ऑफ वोवेल्स तो ये दो वैल्यू को रिटर्न कर देगा तो इस तरीके का फंक्शन हमें क्रिएट करना है इट इज गोइंग टू बी वेरी इजी नॉर्मल जो हमने चीजें सीखी है वही सारी चीजें हमारे काम आएंगी तो एक बार पॉज करके फंक्शन का तो लॉजिक यूज़ करना ही है पुराना जो स्ट्रिंग्स के टाइम पे लूप्स के टाइम पे हमने चीजें सीखी थी उनको भी हमें याद करना है और फिर एक बार इसको खुद सॉल्व करने की कोशिश करनी है बाकी हम तो अभी करेंगे ही लेट्स ट्राई एंड सॉल्व इट सबसे पहले तो हम अपने फंक्शन का नाम सोच लेते हैं क्या फंक्शन हम अपने फंक्शन का नाम लिख सकते हैं काउंट वल्स फंक्शन का नाम जनरली पढ़ के ही समझ आ जाना चाहिए कि ये फंक्शन क्या काम करवाता है तो अपना फंक्शन एक बार क्र क्रिएट करते हैं इन आवर कोड लेट्स क्रिएट अ फंक्शन काउंट वल्स इसके अंदर इनपुट के अंदर क्या आएगा इस फंक्शन के अंदर इनपुट के अंदर एक स्ट्रिंग आएगी तो स्ट्रिंग के लिए उसको नाम दे देते हैं एटीआर तो ये हमारे वेरिएबल का नाम हो जाएगा स्ट्रिंग वेरिएबल का नाम एंड अब हमें स्ट्रिंग वेरिएबल के अंदर सारे के सारे वोवेल्स को काउंट करना है अब वोवेल्स को कैसे काउंट करेंगे लेट्स सपोज हमारे पास कोई भी स्ट्रिंग है हमारे पास एक स्ट्रिंग है अपना कॉलेज अब इस स्ट्रिंग के अंदर मुझे क्या करना पड़ेगा एक-एक इंडेक्स पे जाना पड़ेगा और देखना पड़ेगा क्या ये वॉबल है एक हमारी स्ट्रिंग है और एक अपना काउंट वेरिएबल हम ले सकते हैं काउंट को इनिश इज कर देंगे ज़ीरो के साथ अब स्ट्रिंग के एक-एक लेटर के ऊपर जाएंगे लेट्स सपोज हमारे पास लेटर है ए हम चेक करेंगे क्या ये वॉवेल है या ये वॉवेल नहीं है अगर है वॉवेल तो काउंट को इंक्रीज कर देंगे वन से फिर p पे जाएंगे प तो वॉवेल नहीं है फिर n पे जाएंगे n तो वॉवेल नहीं है फिर a पे जाएंगे ए तो वॉवेल है तो काउंट इंक्रीज कर दिया बाय वन फिर स पे जाएंगे नहीं है o पे जाएंगे है इंक्रीज कर दिया बाय वन ए पे जाएंगे नहीं है दूसरे एल पे जाएंगे नहीं है फिर e पर जाएंगे e पर जाएंगे तो इट इज अ वल तो इसे काउंट को इंक्रीज कर दिया फोर जी पर जाएंगे नहीं है ई पे जाएंगे दोबारा काउंट को इंक्रीज कर देंगे बाय फोर तो इस तरीके से एकएक लेटर एकएक कैरेक्टर एकएक इंडेक्स पे मुझे जाना है और अपने वोवेल्स को मुझे काउंट करना है तो वोवेल्स आइडेंटिफिकेशन ऑफ स्ट्रिंग हम अपनी स्ट्रिंग से एक-एक कैरेक्टर निकालेंगे और क्या करेंगे कसोल डॉट लॉक करके अपने कैरेक्टर्स को प्रिंट करवाएंगे इसे यहां से हटा लेते हैं सेव करते हैं रिफ्रेश करते हैं काउंट वोवेल्स को हम कॉल करने वाले हैं विद अ स्ट्रिंग इसके अंदर स्ट्रिंग रख लेते हैं अपना कॉलेज ये हमारी स्ट्रिंग हो गई तो स्ट्रिंग के सारे के सारे जो इंडिविजुअल कैरेक्टर्स हैं वो हमारे पास प्रिंट होके आ गए फॉर ऑफ लूप को कैसे लिखना है वो हमने ऑलरेडी सीखा हुआ है अब हमें एक-एक कैरेक्टर के लिए चेक करना है क्या ये ववलू भी जो कैरेक्टर होता है लेट्स सपोज जिसकी वैल्यू अभी a है उसे कैसे चेक करेंगे कि वो कोई वोल है क्या तो हम इस वैल्यू को कंपेयर कर सकते हैं विद आवर फाइव वैल्यूज ए e आईओ एंड य चेक कर लो हर इंडिविजुअल के साथ क्या ये इससे मैच कर रहा है तो इक्वल टू इक्वल टू इक्वल टू इसका हमें चेक लगाने की जरूरत है तो यहां पे पहले तो एक वेरिएबल ले लेते हैं लेट काउंट इज इक्वल टू 0 एंड फिर यहां पे हम चेक कर सकते हैं अगर अगर मेरे कैरेक्टर की वैल्यू इक्वल टू हो जाती है a के या फिर कैरेक्टर की वैल्यू इक्वल टू हो जाती है e के इसी तरीके से अगर हमारे कैरेक्टर की वैल्यू इक्वल टू हो जाती है i और माय कैरेक्टर इज इक्वल टू o और माय कैरेक्टर इज इक्वल टू u इस तरीके से पांच कैरेक्टर्स के साथ हम कंपेयर कर सकते हैं क्या किया हमने पांचों के पांचों कैरेक्टर्स के नाम लिख दिए और सबके साथ कंपेयर कर लिया अगर इसके साथ मैच हो जाता है ठीक है तब तो बाकियों को चेक करने की जरूरत नहीं है नहीं तो ये तो क्या किसकी कंडीशन होती है और और या तो की कंडीशन या तो या नहीं तो इसके साथ चेक करो नहीं तो इसके साथ चेक करो नहीं तो इसके साथ चेक करो नहीं तो इसके साथ चेक करो पांचों में अगर किसी के साथ भी मैच हो गया तो हम क्या करेंगे तो फिर हमें काउंट को कर देना है प्लस प्लस तो हमारा काउंट हो जाएगा प्लस प्लस और अगर नहीं होता मैच तो हमें कुछ करने की जरूरत नहीं है काउंट तो वैसे ही कम था उसको प्लस प्लस नहीं करेंगे और लास्ट में क्या करेंगे अभी के लिए लास्ट में सिर्फ प्रिंट करवाते हैं अपना काउंट सेव कर लेते हैं तो इस तरीके से ऑटोमेटिक बीएस कोड ने क्या किया हमारे कोड को एक बेटर तरीके से लिख दिया इसके लिए आई बिलीव मैंने प्रीटियर एक एक्सटेंशन होती है के अंदर आपको एक्सटेंशन इंस्टॉल करनी है यू कैन सिंपली गो टू दिस एक्सटेंशन एंड यहां से जाके आप एक्सटेंशन को इंस्टॉल कर सकते हो और फिर कुछ कुछ एक्सटेंशन होती है कोड लिखने में हेल्प कर रही होती है प्र टियर इज वन ऑफ देम एक लाइव सर्वर होती है जिसको वेबसाइट बनाते टाइम हम यूज कर सकते हैं बहुत सारी डिफरेंट डिफरेंट एक्सटेंशन होती है तो इस तरीके से हमारा कोड लिखकर आ गया लॉजिक सेम है रिफ्रेश किया अब काउंट वोवेल्स को एक बार एक सिंपल स्ट्रिंग के लिए कॉल करते हैं लेट्स कॉल इट फॉर ए बीसी एंटर किया ए बी सी के अंदर कितने वल्स हैं एक ही वोल है ए प्रिंट करवा दिया उसने अब ट्रिपल ए के लिए कॉल करते हैं थ्री बिल्कुल सही अब इफ आई कॉल इट फॉर अपना कॉलेज एंटर किया कितने वल्स है फाइव वल्स है कौन-कौन से ए सेकंड ए ओ e एंड सेकंड ई इस तरीके से हमारे पास आ गया अगर मैंने यूज किया काउंट वोवेल्स को फॉर लेट्स सपोज x वाज एक भी वोल नहीं है तो हमारे पास प्रिंट होकर आ गया जीरो तो इस तरीके से हम अपना ऐसा फंक्शन बना सकते हैं जो वोवेल्स को काउंट करता है और फाइनली हमें क्या करना है काउंट को रिटर्न करना है तो ये फंक्शन क्या करेगा रिटर्न कर देगा द काउंट ऑफ वस तो इस तरीके से हमने अपने फंक्शन को क्रिएट कर लिया है नेक्स्ट पार्ट पे आ जाते हैं क्रिएट एन एरो फंक्शन टू परफॉर्म द सेम टास्क मुझे क्या करना है एरो फंक्शन की फॉर्म में सेम काम परफॉर्म करना है तो उसके लिए कुछ नहीं करना सिंपली अपना एक एरो फंक्शन बनाओ इसके लिए इसे नाम देते हैं कंस्ट अ लेट्स कॉल इट काउंट वोवेल्स की जगह ओड दे देते हैं बस तो यह हमारा एरो फंक्शन हो जाएगा जिसके अंदर इनपुट में एक स्ट्रिंग आएगी फिर हम एरो लगा देंगे और वही सेम काम करना है इन फैक्ट वी कैन कॉपी द सेम कोड कॉपी कर लिया पेस्ट कर दिया सेव कर लिया रिफ्रेश किया काउंट वाओ को कॉल करते हैं काउंट वाव को कॉल करते हैं विद आवर स्ट्रिंग इट्स कॉल्ड ट ए बी सी डी एंटर किया हमारे पास एक वॉबल आ गया इसी तरीके से ए ई आई ओ यू आई नो हमारे पास पांच आएगा काउंट एंटर किया हमारे पास काउंट में रिटर्न होकर आ गया पांच तो इस तरीके से हम अपने फंक्शंस को क्रिएट कर रहे हैं इन जावास्क्रिप्ट अब फंक्शंस के बाद नेक्स्ट हम बात करने वाले हैं एक और इनबिल्ट इंटरेस्टिंग फंक्शन के बारे में फॉर व्हिच इज कॉल्ड द फॉर ईच फॉर ईच एक तरीके का लूप होता है जिसको जनरली हम अपने अरेज के लिए यूज़ कर सकते हैं अब जो फॉर ईच है इट इज एक्चुअली अ मेथड दो टर्म्स आप बार-बार बार-बार सुनेंगे एक टर्म आप सुनेंगे फंक्शन एक टर्म आप सुनेंगे मेथड अब फंक्शन क्या होता है हमने ऑलरेडी पढ़ लिया पर जनरली हमने बात की है कि जब भी हम कोई स्ट्रिंग लेते हैं लेट्स सपोज हमने ली ए बी सी और उसके लिए अगर हमने लिखा टू अपर केस तो ये जो टू अपर केस होता है दिस इज एक्चुअली अ मेथड उसी तरीके से ये जो हमारा फॉर ईच ए दिस इज एक्चुअली अ मेथड अ फंक्शन तो एक नॉर्मल फंक्शन होता है नॉर्मल ब्लैक बॉक्स होता है जो हमारे लिए कुछ इनपुट के बेसस पे हमें कुछ आउटपुट कुछ काम करके देता है पर अगर हम इसी फंक्शन को लेट्स सपोज किसी ऑब्जेक्ट के साथ एसोसिएट कर देते हैं तो फिर यही फंक्शन हमारे लिए मेथड बन जाता है फॉर एग्जांपल हमने बोल दिया टू अपर केस एक स्ट्रिंग के लिए ही यूज़ हो सकता है तो ये क्या बन गया ये मेथड बन गया क्योंकि टू अपर केस अब लगाने के लिए टू अपर केस को यूज़ करने के लिए हमें हमेशा अब एक स्ट्रिंग की जरूरत होगी ऐसा नहीं है कि नॉर्मली हम अपने कोड के अंदर लिखें कोई एरे 1 2 3 और उसके लिए हम यूज़ कर लें डॉट अपर केस टू अपर केस अगर इस तरीके से हम करते हैं सेव किया रिफ्रेश किया तो हमारे पास एरर आ जाएगा टू अपर केस इज़ नॉट अ फंक्शन एट दिस वैल्यू मतलब इस तरीके से हम उसे यूज़ नहीं कर सकते हमें हमेशा स्ट्रिंग की जरूरत होगी अपने टू अपर केस को यूज़ करने के लिए तो यह जो टू अपर केस था यह था तो एक फंक्शन पर इसे हमने बाइंडर दिया इसे हमने जोड़ दिया एक स्ट्रिंग के साथ तो अब यह हमेशा स्ट्रिंग्स के साथ यूज़ होता है ऐसे ही हमारा जो फॉर ईच है फॉर ईच है तो एक फंक्शन ही पर यह फंक्शन जुड़ गया है अरेज के साथ या इसे हम स्ट्रिंग्स के लिए भी यूज़ कर सकते हैं पर क्योंकि ये किसी डेटा स्ट्रक्चर के साथ जहां पे हम डेटा स्टोर कराते हैं उसके साथ जुड़ गया है तो इसी फंक्शन को हम मेथड कहेंगे तो मेथड्स क्या होते हैं मेथड्स फंक्शंस ही होते हैं बस मेथड्स को हम किसी ऑब्जेक्ट के साथ या किसी और चीज के साथ किसी डेटा स्ट्रक्चर के साथ एसोसिएट कर देते हैं बाइंडर देते हैं जोड़ देते हैं अब नेक्स्ट मेथड जिसको हम पढ़ रहे होंगे ये हमारा फॉर ईच मेथड होगा और इसका काम होता है टू क्रिएट अ लूप फॉर ईच को हम इस तरीके से यूज करते हैं अगर हम किसी एरे के ऊपर फॉर ईच लगाना चाह रहे हैं तो हम अपने एरे का नाम लिखते हैं फिर हम लिखते हैं डॉट फॉर ईच उसके बाद पैरेंस के अंदर हम अपना एक फंक्शन पास करते हैं और यह जो फंक्शन होता है इसको हम कॉलबैक फंक्शन भी बोल सकते हैं अब फंक्शंस जावास्क्रिप्ट के अंदर दिस इज अ वेरी इंटरेस्टिंग कांसेप्ट इन जावास्क्रिप्ट कि फंक्शंस जावास्क्रिप्ट के अंदर पैरामीटर्स की तरह पास हो सकते हैं वो पैरामीटर्स की तरह पास भी हो सकते हैं प्लस आप चाहो तो किसी फंक्शन की वैल्यू को आप रिटर्न भी कर सकते हो तो नॉर्मल ली हम क्या करते थे किसी वेरिएबल को जो लेट्स सपोज कोई नंबर वेरिएबल है या कोई स्ट्रिंग वेरिएबल है उसे हम फंक्शन के अंदर पैरामीटर की तरह पास कर सकते थे यहां पर मैंने लिखा एक फंक्शन माय फंक और इसके अंदर हमने क्या किया कोई नंबर लिया लेट्स सपोज हमारे पास कोई नंबर है यहां पर एयम नंबर है और इसी नंबर को ये फंक्शन क्या करता है रिटर्न कर देता है तो नॉर्मल नंबर्स को नॉर्मल स्ट्रिंग्स को रिटर्न करना पैरामीटर की तरह लेना ये सारी चीजें नॉर्मल है पर जावास्क्रिप्ट के अंदर हम फंक्शंस को भी यहां पर ले सकते हैं जैसे अगर मैंने डिफाइन किया कोई फंक्शन एी स एी स मेरा क्या है एक फंक्शन है ये फंक्शन क्या काम करवाता है यह फंक्शन काम करवाता है console.log हेलो प्रिंट करने का तो इसी ए बी स को यहां पे लिखा भी जा सकता है और इसी ए बी सी को यहां से रिटर्न भी किया जा सकता है तो फंक्शन जावास्क्रिप्ट के अंदर नॉर्मल वेरिएबल की तरह कहीं पे पास भी किए जा सकते हैं कहीं से रिटर्न भी किए जा सकते हैं इसीलिए जावास्क्रिप्ट के जो फंक्शंस होते हैं दे आर वेरी स्पेशल और ऐसा फंक्शन जो किसी दूसरे फंक्शन को आर्गुमेंट की तरह पास किया जा आता है इसी फंक्शन को हम नाम दे देते हैं कॉलबैक तो कॉल बैक इज़ अ फंक्शन व्हिच इज़ पास्ड एज़ एन आर्गुमेंट टू अनदर फंक्शन तो ये जो हमारा कॉलबैक फंक्शन है फॉर ईच के अंदर ये फंक्शन हर एक एलिमेंट के लिए एरे के अंदर एग्जीक्यूट होता है इसका एक एग्जांपल देखते हैं एग्जांपल के अंदर हम क्रिएट करते हैं एक एरे लेट एरे इज इक्वल टू वी हैव 1 2 3 फर एंड फाइव इस तरीके से हमने एक एरे बना लिया अब फॉर ईच यूज़ करने के लिए हम लिखते हैं एरे डॉट फॉर ईच और इस तरीके से हम अपना फंक्शन एग्जीक्यूट कर सकते हैं अब इस मेथड को एग्जीक्यूट करने के लिए हमें इसके अंदर कोई फंक्शन पास करना पड़ेगा तो या तो हम लिख सकते हैं नॉर्मली कोई फंक्शन फंक्शन के साथ हम इसे नाम दे सकते हैं माय फंक्शन या प्रिंट वैल्यू प्रिंट वैल्यू नाम दे देते हैं इस फंक्शन को तो प्रॉपर फंक्शन की डेफिनेशन जो होती है उसको हम पास करते हैं और इसके अंदर इसी फंक्शन के अंदर हम क्या कर सकते हैं वैल्यू कोई भी वेरिएबल है जिसको डिफाइन करेंगे अब ये वैल्यू का क्या मतलब होगा इस फंक्शन के अंदर वैल्यू जो है ये फॉर ईच पास करेगा फॉर ईच एरे के एक-एक एलिमेंट को वैल्यू की तरह उठाएगा और इस फंक्शन को ये जो इंटरनल कॉलबैक फंक्शन है इसको पास कर करेगा तो यहां पे वैल्यू का मतलब है ईच वैल्यू एट ईच इंडेक्स हर जो इंडेक्स की वैल्यू है वो इस वैल्यू वेरिएबल के अंदर एक-एक करके एक-एक करके आती रहेगी तो ये जो कॉलबैक फंक्शन है ये हर एक वैल्यू हर एक आइटम के लिए एग्जीक्यूट होगा और इस फंक्शन के अंदर हम कुछ नहीं करेंगे हम कसोल डलॉग करके प्रिंट करवा देंगे वैल्यू इसको सेव कर लेते हैं ये जो फंक्शन होता है कॉलबैक फंक्शन इसको हम एग्जीक्यूट नहीं करना होता सिर्फ इसकी डेफिनेशन पास करनी होती है फॉर ईच इसे ऑटोमेटिक एग्जीक्यूट कर देगा हर एक एलिमेंट के लिए अब रिफ्रेश करेंगे तो हमने फॉर ईच को तो ऑलरेडी कॉल किया था तो हमारे पास सारे के सारे आइटम्स प्रिंट होकर आ गए तो इस तरीके से हमारा फॉर ईच काम करता है अब जनरली फॉर ईच के अंदर ये जो कॉल बैक हम पास करते हैं इसको हम पास करते हैं इन द फॉर्म ऑफ एन एरो फंक्शन एरो फंक्शन लिखने के लिए हम यहां बना सकते हैं अपने पेंसिस हमने लिख दिया वैल्यू जो हमारा इनपुट होने वाला है अब ये जो वैल्यू है हर एक इंडेक्स के लिए अलग-अलग वैल्यू होगी और यहां हम अपना कोई भी काम कर सकते हैं तो वी कैन राइट कसोल डलॉग वैल्यू इसे कर सकते हैं सेव एंड रिफ्रेश तो फिर से हमारे लिए वैल्यू आके प्रिंट हो जाएगी अगर हमारे पास एरे के अंदर स्ट्रिंग्स होती तो सारी स्ट्रिंग्स की वैल्यू आ जाती फॉर एग्जांपल हमने सिटीज के नाम स्टोर कराए मैंने पुणे लिख दिया मैंने दिल्ली लिख दिया मैंने मुंबई लिख दिया सेव किया रिफ्रेश किया सो वी हैव ऑल द सिटी नेम्स तो इस तरीके से हमारा फॉर ईच काम करता है फॉर ईच को हम तब यूज करते हैं जब हमें एरे के हर एक एलिमेंट के लिए कुछ काम परफॉर्म कराना होता है फॉर एग्जांपल मुझे हर एक एलिमेंट को अपर केस के अंदर प्रिंट करना है तो मैं लिख सकती हूं फॉर ईच वैल्यू डॉट टू अपर केस एंड इसे एग्जीक्यूट कर देंगे यहां पर ऐसे सेव किया रिफ्रेश किया ये सारी की सारी सिटीज हमारे पास अपर केस के अंदर आ गई सो दिस इज माय फॉर ईच अब फॉर ईच का ये जो कॉलबैक फंक्शन होता है कॉलबैक फंक्शन के अंदर तीन पैरामीटर्स होते हैं जिनको हम यूज़ कर सकते हैं और ये जो पैरामीटर्स होते हैं ऑप्शनल होते हैं हमारे लिए एक होता है हमारा वैल्यू कि हर एक इंडेक्स पे जो वैल्यू स्टोर्ड है जो आइटम स्टोर्ड है इसको हम आइटम भी कह सकते हैं कुछ भी नाम दे सकते हैं हम अपने पैरामीटर्स को दूसरा होता है हमारा इंडेक्स यानी हमारी पोजीशन और तीसरा होता है द एरे इट सेल्फ जैसे अगर मुझे प्रिंट करवाना हो यहां पे वैल्यू के साथ अपने इंडेक्स को तो मैं एक इंडेक्स वेरिएबल बना सकती हूं और यहां पे अपर केस के साथ हम प्रिंट करवा सकते हैं अपने इंडेक्स को इसको सेव किया रिफ्रेश किया पुने एट पोजीशन रो दिल्ली एट पोजीशन वन मुंबई एट पोजीशन टू हम चाहे तो इस इंडेक्स को यहां से हटा भी सकते हैं हम चाहे तो इसे यूज़ भी कर सकते हैं और तीसरा एक पैरामीटर जो बाय डिफॉल्ट हमारे पास होता है दैट इज द एरे इट सेल्फ यानी ए आरआर हमारा जो एरे है उसे हम यहां पर साथ के साथ प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया तो ये हमारी दो वैल्यूज हो गई ये हमारा एरे प्रिंट हो गया पूरा का पूरा ये दो वैल्यूज फिर हमारा पूरा एरे प्रिंट हो गया ये दो वैल्यूज फिर हमारा पूरा का पूरा एरे प्रिंट हो गया तो इस तरीके से इन तीन पैरामीटर्स को फॉर ईच के अंदर यूज किया जा सकता है कुछ केसेस में हो सकता है हमें सिर्फ इंडेक्स की जरूरत पड़े वैल्यू की जरूरत ना पड़े अब हमारा जो फॉर ईच मेथड होता है दिस कैन ओनली बी यूज्ड फॉर अरेज दिस विल नॉट बी यूज्ड फॉर स्ट्रिंग्स स्ट्रिंग्स के लिए अगर हम इसको यूज़ करेंगे तो ये हमें एरर दे देगा अब एक और इंटरेस्टिंग थोरेट्स मैं आपको बताने वाली हूं जो शायद आपसे इंटरव्यूज के अंदर पूछा जा सकता है इंटरव्यूज के अंदर जावास्क्रिप्ट का अगर आपका इंटरव्यू है वेब डेवलपमेंट की पोजीशन के लिए तो हमसे एक सवाल पूछा जा सकता है कि हायर ऑर्डर फंक्शंस क्या होते हैं एंड फॉर अ फन फैक्ट दिस फॉर ईच मेथड हायर ऑर्डर फंक्शंस इनको हम कह सकते हैं या हायर ऑर्डर मेथड्स इनको हम कह सकते हैं ये जो हमारा फॉर ईच होता है ये हमारा हायर ऑर्डर फंक्शन या हायर ऑर्डर मेथड इसको हम कह सकते हैं हायर ऑर्डर फंक्शंस वो फंक्शंस होते हैं जो दूसरे फंक्शंस को या तो एज अ पैरामीटर ले लेते हैं किसी दूसरे फंक्शन को एज अ पैरामीटर यूज़ कर रहे होते हैं या फिर किसी फंक्शन को रिटर्न करते हैं किसी फंक्शन को कोई अगर फंक्शन है जो एज अ पैरामीटर यूज़ कर रहा है या दूसरा फंक्शन जो वहां से रिटर्न कर रहा है फंक्शन को एज अ वैल्यू तो उन्हें हम हायर ऑर्डर फंक्शंस कहते हैं जैसे यहां पर ये जो मेरा फॉर इच फंक्शन है इसका पैरामीटर क्या है इसका पैरामीटर एक दूसरा फंक्शन है जो हमारा कॉल बैक होता है तो जहां भी जिस भी फंक्शन में आपको कॉल बैक दिखे वो क्या बन जाएगा वो एक हायर ऑर्डर फंक्शन बन जाएगा तो हायर ऑर्डर फंक्शन और हायर ऑर्डर मेथड्स इन जावास्क्रिप्ट आर मेथड्स दैट आइर टेक अनदर फंक्शन एज अ पैरामीटर इनसाइड देम और दे रिटर्न अनदर फंक्शन एज देयर आउटपुट तो इस तरीके के फंक्शंस को हम हायर ऑर्डर फंक्शंस कहते हैं तो ये चीज आप अपने नोट्स के अंदर नोट डाउन कर सकते हो कि हमारे हायर ऑर्डर फंक्शंस क्या होते हैं अब नेक्स्ट हम करने वाले हैं सॉल्व अपना एक प्रैक्टिस क्वेश्चन फॉर अ गिवन एरे ऑफ़ नंबर्स प्रिंट द स्क्वेयर ऑफ ईच वैल्यू यूजिंग द फॉर ईच लूप मतलब हमारे पास एक एरे दिया होगा 1 2 3 4 कुछ भी हो सकते हैं इसके अंदर नंबर्स हमें क्या करना है हर नंबर के लिए उसका स्क्वायर प्रिंट करना है वन के लिए वन हो जाएगा टू के लिए फोर हो जाएगा थ्री के लिए नाइन हो जाएगा फोरर के लिए 16 हो जाएगा इस तरीके से हर एक नंबर का हमें स्क्वायर प्रिंट करना है यूजिंग द फॉर ईच लूप स्क्वायर क्या होता है स्क्वायर होता है नंबर मल्टीप्ला बाय नंबर इट सेल्फ अब उसके लिए सबसे पहले तो हम एरे बना लेते हैं पहले तो इसे खुद सॉल्व करने की कोशिश करनी है बाकी पॉज करके लेक्चर को वरना हम सॉल्यूशन कर रहे हैं एक एरे बना लेते हैं इनको कहते हैं नंबर्स लेट नंबर्स एरे इज इक्वल टू इसके अंदर कोई भी रैंडम नंबर है जिसको हम लिख सकते हैं अपना फॉर इच लूप यूज़ करने के लिए हम लिखेंगे नंबर्स डॉट फॉर ईच और इसके अंदर अपना कॉल बैक पास कर देंगे कॉल बैक के अंदर हमारे पास हर एक नंबर आ जाएगा नंबर ऑफ नंबर्स एंड यहां पे हम प्रिंट करवा सकते हैं console.log नंबर मल्टीप्ला बाय नंबर इट सेल्फ तो ये हमारे पास आ जाएगा हमारा स्क्वायर स्क्वायर लाने का का दूसरा तरीका यह भी है कि हम अपना यह वाला ऑपरेटर यूज़ करें नहीं तो ये भी वैलिड तरीका है इसे सेव कर लेते हैं और आउटपुट में जब हम आएंगे तो हमारे पास हर एक नंबर का स्क्वायर रिटर्न होके आ जाएगा टू का स्क्वायर फोर होता है 3 का स्क्वायर 9 होता है 4 का स्क्वायर 16 होता है 5 का 25 सिक्स का हमारे पास 36 आ जाएगा तो इस तरीके से इवन इफ यू राइट रेयली लाइक बिग नंबर्स जिनके हो सकता है हमें स्क्वायर याद ना हो जैसे 67 हो गया 52 हो गया 39 हो गया सेव किया रिफ्रेश किया तो इनके भी स्क्वायर्स हमारे लिए ऑटोमेटिक प्रिंट होके आ जाएंगे अच्छा कॉल बैक को लिखने का एक और तरीका होता है फॉर एग्जांपल मैंने कोई फंक्शन डिफाइन किया वी विल कॉल इट स्क्वायर या कैलकुलेट स्क्वायर कैलकुलेट स्क्वायर इसको हम बोल सकते हैं इज इक्वल टू और यहां पे हम अपना पूरा जो एरो फंक्शन है इसको कट करके यहां पे पेस्ट कर देते हैं तो ये हमारा कैलकुलेट स्क्वायर नाम का एक फंक्शन बन गया जिसकी डेफिनेशन में एक पूरा का पूरा हमारे पास एरो फंक्शन है तो इस कैलकुलेट स्क्वायर को आई कैन पास इनसाइड दिस फॉर ईच फॉर ईच के अंदर कैलकुलेट स्क्वायर को अगर हम पास कर देंगे तो भी एक वैलिड तरीका होगा अपने एरो फंक्शंस को यूज़ करने का रिफ्रेश कर करेंगे तो भी हमारे पास सारे के सारे स्क्वेयर्स प्रिंट होकर आ जाएंगे तो इस तरीके से भी हम अपने कॉल बैक्स को पास कर सकते हैं तो कॉल बैक में हमें क्या पास करना होता है बस एक फंक्शन पास करना होता है वो एक वेरिएबल भी हो सकता है जिसमें किसी फंक्शन की डेफिनेशन लिखी हो नेक्स्ट हम बात करने वाले हैं एरे के कुछ और मेथड्स के बारे में और ये इंपॉर्टेंट मेथड्स हैं जो हमारी डे टुडे जिंदगी को अरेज के साथ काम करने में थोड़ा सा आसान बना देते हैं अब ये जो एरे मेथड्स है काफी फ्रीक्वेंसी प्लेटफार्म पे या कहीं और भी जाके अगर आप दूसरों का कोड देखते हो जिसने वेबसाइट बनाई है या कोई वेब डेवलपमेंट का आप कोड देखते हो प्रोजेक्ट का कोड देखते हो उसके अंदर का काफी फ्रीक्वेंसी पार्ट ऑफ़ मॉडर्न जावास्क्रिप्ट जो हमारी जिंदगी को थोड़ा सा आसान बनाते हैं सबसे पहला मेथड जिसके बारे में हम जान सकते हैं दैट इज द मैप मेथड मैप मेथड हमारा फॉर ईच के काफी सिमिलर होता है जैसे फॉर इच का काम होता है एरे के एक-एक इंडेक्स पर जाकर एक-एक वैल्यू के लिए किसी ऑपरेशन को परफॉर्म कराना वैसा ही कुछ काम हमारे लिए हमारा मैप मेथड करके देता है मैप को भी यूज किया जा सकता है एरे के एक-एक इंडेक्स पे जाके एक-एक वैल्यू के लिए कुछ कुछ ऑपरेशन परफॉर्म कराने के लिए तो मैप इज वेरी सिमिलर टू फॉर ईच बस दोनों में डिफरेंस ये होता है कि मैप क्या करता है हमें एक नया एरे रिटर्न करके देता है कि कुछ भी काम आपने करा लिया तो जो काम आप कराओ ग और जो रिजल्ट हमारा आएगा उन वैल्यू से एक नया एरे क्रिएट हो जाएगा बल्कि फॉर ईच के अंदर कोई नया एरे क्रिएट नहीं होता फॉर इच क्या करता है कुछ काम ही हमें कैलकुलेट करके देता है तो मैप क्रिएट्स अ न्यू एरे विद द रिजल्ट ऑफ सम ऑपरेशन द वैल्यू इट्स कॉल बैक रिटर्न्स आर यूज टू फॉर्म अ न्यू एरे तो हम लिखते हैं रेड मैप और इसके अंदर भी हम एक कॉल बैक फंक्शन पास कर सकते हैं और इसके अंदर भी हम तीन पैरामीटर्स यूज कर सकते हैं वैल्यू इंडेक्स और एरे जनरली जब भी हम फॉर इच को यूज करते हैं मैप को यूज करते हैं तो हम ये इंडेक्स और एरे जनरली नहीं यूज कर रहे होते हम सिंपली अपना वैल्यू ही लिखते हैं कॉल बैक के अंदर तो मैप को यूज करने के लिए सबसे पहले तो हम मैप को यूज करने वाले हैं अपने एरे के एलिमेंट्स को प्रिंट करवाने के लिए फॉर एग्जांपल इसे यहां से हटा देते हैं हमें ये जो नंबर्स एरे है इसके एलिमेंट्स को प्रिंट करना है तो हम लिख सकते हैं नंबर्स डॉट मैप और हम यहां अपना कॉल बैक पास कर सकते हैं हमारे पास कोई भी वैल्यू होगी उसे हम प्रिंट करवा सकते हैं console.log r वैल्यू इसको सेव कर लेते हैं रिफ्रेश किया तो हमारे पास सारे के सारे नंबर्स प्रिंट होके आ गए इन द फॉर्म ऑफ वैल्यूज तो ये तो हो गया मैप को यूज़ करना टू प्रिंट ऑल द वैल्यूज इसके अलावा मैप को यूज करके हम अपना नया एरे भी बना सकते हैं हम क्या करेंगे इस एरे की कॉपी बनाने की कोशिश करते हैं तो जो भी वैल्यू मैप से रिटर्न होती है मैप के कॉल बैक से रिटर्न होती है वो नए एरे के अंदर जाके स्टोर हो जाती है जैसे हम सिंपली अपनी वैल्यू को ही रिटर्न कर सकते हैं जो वैल्यू है हर एक इंडेक्स पे उसी को रिटर्न कर दिया सेव किया रिफ्रेश किया एज सच कुछ प्रिंट नहीं होगा पर ये क्या करेगा ये हमारे लिए वैल्यू रिटर्न करेगा तो उसे हम एक न्यू एरे के अंदर स्टोर करा सकते हैं तो ये जो न्यू एरे वेरिएबल होगा नंस ड मैप ने इसे एक वैल्यू रिटर्न की और फिर हम कसोल डलॉग करके प्रिंट करवा सकते हैं अपने न्यू एरे को सेव किया रिफ्रेश किया तो ये हमारा न्यू एरे आ गया जिसके अंदर सेम वैल्यूज हैं हम चाहे तो वैल्यूज की जगह यहां वैल्यू का स्क्वायर भी सेव करवा सकते हैं सेव किया रिफ्रेश किया इस बार न्यू एरे के अंदर सारे के सारे नंबर्स का स्क्वायर आके स्टोर हो गया हमारा जो ओरिजिनल एरे था यानी नम्स वो अभी भी सेम है उसके अंदर कोई चेंज चज नहीं हुआ ये सिंपली न्यू एरे रिटर्न कर रहा है अगर हम चाहते हैं हर वैल्यू दो से मल्टीप्लाई हो जाए टू से मल्टीप्लाई हो जाए डबल हो जाए रिफ्रेश किया तो हमारे पास सारी की सारी वैल्यूज डबल होकर प्रिंट हो गई तो इस तरीके से हम अपने मैप को यूज़ करते हैं एंड मैप इज यूज्ड टू क्रिएट अ न्यू एरे यूजिंग सम रिटर्न वैल्यू बेस्ड ऑन ईच वैल्यू व्हिच इज स्टोर्ड एट द इंडिविजुअल इंडेक्सेस ऑफ द एरे तो यहां पे जब भी आप मैप या फॉर ईच के अंदर कंफ्यूज हो ये याद रखना है फॉर ईच यूज़ होता है जब हमें नॉर्मली कोई कैलकुलेशन करनी हो नॉर्मली कुछ प्रिंट करवाना हो मैप यूज़ होता है जब हमें वैल्यूज को यूज़ करके कोई नया या एरे क्रिएट करना हो तो ये हमारे यूज केसेस होते हैं आल्सो अगर कभी भी आपको फॉर इच का मान लो सिंटेक्स याद नहीं आ रहा मैप का सिंटेक्स याद नहीं आ रहा कभी भी कुछ भी प्रॉब्लम हो सकती है हो सकता है हम मल्टीपल काफी टाइम से दूसरी लैंग्वेज में कोड कर रहे हो हम भूल गए जावास्क्रिप्ट का सिंटेक्स दैट इज कंपलीटली नॉर्मल फॉर अ डेवलपर अगर आप डेली बेसिस पे जो है जावास्क्रिप्ट को यूज नहीं कर रहे बहुत ज्यादा फ्रीक्वेंसी करना हो आप सिंपली जाके google3 की डॉक्यूमेंटेशन होती है जिसके अंदर जाके कभी भी हम कुछ भी पढ़ सकते हैं तो ये तो हो गया हमारा मैप मेथड इसके अलावा हमारे पास एक और मेथड होता है व्हिच इज कॉल्ड द फिल्टर मेथड फिल्टर मेथड का काम होता है एरे के एक-एक इंडिविजुअल इंडेक्स पे जाके जो हमारी वैल्यूज होती हैं उनमें से कुछ वैल्यूज फिल्टर आउट करना बेस्ड ऑन सम कंडीशन जैसे चाय छान हैं तो छलनी से जो चाय निकल के आती है वही तो फिल्टर हो के कप के अंदर स्टोर होती है तो हम सोच सकते हैं वो जो छलनी है दैट इज माय फिल्टर कॉल बैक फंक्शन जो कुछ फिल्टर करेगा वैल्यूज और जो भी वैल्यू फिल्टर होके कप के अंदर आगे स्टोर हो रही है दैट इज माय न्यू एरे तो इस तरीके से हमने एग्जांपल लिया लेट्स सपोज वी हैव एन एरे और हमें सारे के सारे इवन एलिमेंट्स वहां से फिल्टर करने हैं तो हम क्या कर सकते हैं एरे डॉट फिल्टर और फिर अंदर हम अपना कॉलबैक डिफाइन कर सकते हैं कॉल बैक के अंदर रिटर्न वैल्यू में हम लिख सकते हैं जो भी वैल्यू टू से कंप्लीट डिवाइड होके रिमाइंडर में ज़ीरो दे देती है वो वैल्यूज क्या होती है वो वैल्यूज हमारी इवन वैल्यूज होती हैं तो ये क्या रिटर्न करेगा जिस भी वैल्यू के लिए जो कंडीशन है हम कोई कंडीशन लिख सकते हैं लास्ट में हम कुछ भी लिख सकते हैं अगर जिस भी एलिमेंट के लिए कंडीशन ट्रू दे दी गई वो एलिमेंट नए एरे में जाके स्टोर हो जाएगा और जिसके लिए कंडीशन फॉल्स दे देगी या फिल्टर फॉल्स दे देगा वो नए एरे के अंदर जाके स्टोर नहीं होगा तो इसका एग्जांपल देखते हैं लेट्स क्रिएट अ नंबर्स एरे या सिंपल एरे इसके अंदर हम कुछ नंबर्स जो है उनको स्टोर करा सकते हैं एंड फिर हम क्या करेंगे हम इनमें से फिल्टर करेंगे इवन नंबर्स को एरे डॉट फिल्टर मुझे इवन नंबर्स को फिल्टर करना है तो उसके लिए हम अपना कॉल बैक फंक्शन बना सकते हैं हर एक वैल्यू के लिए मैं रिटर्न कर सकती हूं वैल्यू मॉड्यूस टू ट्रिप = 0 जो भी वैल्यू है दो से डिवाइड होके रिमाइंडर में जीरो दे रही है वही मेरी इवन वैल्यू है और एक नए एरे के अंदर स्टोर करा सकते हैं वी कैन कॉल इट इवन एरे ये हमारा इवन एरे हो जाएगा और लास्ट में जाके हम प्रिंट करवा सकते हैं अपने इवन एरे को सेव कर लिया रिफ्रेश किया सो दिस इज माय इवन एरे व्हिच हैज टू फोर एंड सिक्स ओरिजिनल एरे से जो इवन वैल्यूज थी वो हमारे पास फिल्टर आउट होके हो गई अगर हमें ऑड वैल्यूज चाहिए तो यहां हम नॉट इक्वल टू कर सकते हैं सेव किया रिफ्रेश किया तो अब हमारे पास एरे के अंदर सारी की सारी ऑड वैल्यूज आ जाएंगी इसी तरीके से इफ आई वांट मुझे वो सारी वैल्यूज चाहिए जो तीन से बड़ी है तो हम यहां पे कंडीशन लगा सकते हैं वैल्यू ग्रेटर दन 3 तो तुम्हारे पास क्या होगा तीन से बड़ी वाली सारी वैल्यूज आ जाएंगी फिल्टर आउट होके तो जिन-जिन वैल्यूज के लिए ये जो कंडीशन है ट्रू रिटर्न करेगी वो सारी वैल्यूज हमारे इस एरे के अंदर जाके स्टोर हो जाएंगी सेव किया रिफ्रेश किया तीन से बड़े सारे के सारे नंबर्स सारी की सारी वैल्यूज हमारे पास आ गई हमारे नए एरे के अंदर तो ये जो नया एरे है दिस इज बेसिकली अ कॉपी ऑफ सम फिल्टर्ड आउट एलिमेंट्स हमारा जो ओरिजिनल एरे था उसके अंदर चेंज नहीं होता उसके अंदर तो वैल्यूज वैसे की वैसी ही रहती है एक नया एरे बनता है कुछ सेट ऑफ फिल्टर्ड आउट वैल्यूज के साथ एंड इसी तरीके से हम हमारे पास एक और मेथड होता है व्हिच इज़ कॉल्ड द रिड्यूस मेथड रिड्यूस मेथड का काम होता है अगर आपके पास कोई एरे है तो उस एरे के ऊपर कुछ कुछ कुछ कुछ हमें ऑपरेशन परफॉर्म करने हैं और लास्ट में उन ऑपरेशंस को यूज़ करके हमारे पास एक सिंगल वैल्यू आनी चाहिए तो अगर कभी भी कोड करते हुए ऐसा कोई ऑपरेशन हमें परफॉर्म करना है मान लो एवरेज कैलकुलेट करनी हो गई या सम कैलकुलेट करना हो गया जिसमें इनपुट में तो बहुत सारी वैल्यूज जाएंगी जैसे सम कैलकुलेट करना है इनपुट में तो बहुत सारी वैल्यू हैं पर आउटपुट में क्या आएगा आउटपुट में तो एक ही वैल्यू आएगी क्या वैल्यू सम की वैल्यू सम तो एक ही वैल्यू होती है वैसे ही अगर हमें एवरेज कैलकुलेट करना है तो इनपुट में तो बहुत सारी वैल्यूज होंगी पर एवरेज क्या होती है एवरेज तो एक ही वैल्यू होती है तो आउटपुट में क्या आएगा एवरेज आएगा तो इस तरीके से जब भी हमारे पास इनपुट में बहुत सारा होता है और आउटपुट में मुझे एक ही वैल्यू चाहिए तो वहां पे हम रिड्यूस को यूज़ कर सकते हैं अब रिड्यूस मेथड का काम होता है टू परफॉर्म सम ऑपरेशन एंड इट रिड्यूस द एरे टू अ सिंगल वैल्यू एंड इट रिटर्न्स दैट सिंगल वैल्यू कुछ ऑपरेशन परफॉर्म करेगा सिंगल वैल्यू कैलकुलेट करेगा वही सिंगल वैल्यू रिटर्न कर देगा अब यह रिड्यूस का एक एग्जांपल है एक डेमो एग्जांपल है जिसको मैं ने लिया है फ्रॉम दी एमडीएन डॉक्यूमेंटेशन टू शो इट टू यू रिड्यूस को कैसे यूज़ करते हैं इसका बहुत क्लासिकल एग्जांपल है सम कैलकुलेट करना जैसे यहां पर हमने कांस्टेंट एरे बनाया हुआ है 1 2 3 4 और इसके अंदर हमें सम कैलकुलेट करना है तो हमने क्या किया हमने लिख दिया एरे डॉट रिड्यूस और रिड्यूस के अंदर हमने एक एरो फंक्शन पास कर दिया एरो फंक्शन के अंदर हम क्या करते हैं दो वेरिएबल लिखते हैं एक होता है हमारा एक्यूमिनेट वेरिएबल एक होता है हमारी करंट वैल्यू करंट वैल्यूज को कह सकते हो या अभी तक जो हम वैल्यू लिखते आ रहे हैं वो भी इसको हम कह सकते हैं इसे हम एक्यूमिनेट भी कह सकते सकते हैं या इसे हम अपना रिजल्ट भी कह सकते हैं तो दो पैरामीटर्स जाते हैं हमारे कॉल बैक के अंदर एक रिजल्ट एंड एक हमारी वैल्यू और फिर इन दोनों के बेसिस पे कुछ काम होता है जैसे हम अपने एक्यूमर और करंट वैल्यू को यहां पे ऐड कर रहे हैं इसकी जगह हम अपने रिजल्ट और वैल्यू को भी ऐड कर सकते थे अब एक बार मैं सिंपल तरीके से इसका कोड आपको लिख के दिखाती हूं एंड देन आई विल एक्सप्लेन टू यू व्हाट एगजैक्टली इज हैपनिंग अपने एरे को थोड़ा सा छोटा कर लेते हैं चार एलिमेंट्स का आई कैन राइट एरे डॉट रिड्यूस और इसके अंदर हम एक कॉल बैक पास कर सकते हैं कॉल बैक के अंदर दो वैल्यूज होंगी ये दिखा भी रहा है एक होगी प्रीवियस वैल्यू एक होगी करंट वैल्यू इनको प्रीवियस एंड करंट भी बोल सकते हैं नहीं तो एज आई लाइक टू कॉल इट रिजल्ट एंड करंट और रिजल्ट एंड करंट क्या है मुझे रिजल्ट एंड करंट को ऐड करना है तो माय रिजल्ट एंड करंट शुड बी एडेड और इन दोनों को ऐड करके मैं रिटर्न करना चाहती हूं ये रिटर्न करना चाहती हूं तो बेसिकली यहां से क्या होने वाला है पहले तो जो भी रि फाइनल रिजल्ट आएगा कॉन्स्ट इसको हम कह देते हैं आउटपुट सिंगल वैल्यू होगी आउटपुट के अंदर इस आउटपुट को एक बार प्रिंट करवाते हैं सेव रिफ्रेश आउटपुट प्रिंट होके क्या आया 10 आया 10 क्या है 1 प् 2 = 3 3+ 3 6 6 प् 4 इ 10 तो बेसिकली इस कोड ने मेरे लिए मेरा सम कैलकुलेट कर दिया अब हम इस कोड का मतलब समझने वाले हैं कि रिड्यूस ने एक्चुअली काम कैसे किया मैंने अगर लिखा एरे डॉट रिड्यूस और उसके अंदर मैंने कॉल बैक के अंदर आई हैव रिटन माय एरो फंक्शन जिसके अंदर आई हैव वन रिजल्ट और मेरे पास है करंट एरो फंक्शन और हर बार क्या कर रहा है हर बार फंक्शन रिटर्न कर रहा है रिजल्ट प्लस करंट ये जो रिजल्ट है इसको हम प्रीवियस भी कह सकते हैं इसको इनिशियल भी कह सकते हैं कुछ भी कह सकते हैं तो अगर मेरे पास एरे है इफ आई हैव एन एरे 1 2 3 4 तो एगजैक्टली होता क्या है सबसे पहले जो मेरा रिजल्ट है और जो मेरा करंट है ये जो दो वैल्यूज हैं ये शुरू होती है शुरुआत की दो वैल्यूज के साथ यानी अभी रिजल्ट के अंदर या इसको प्रीवियस इसीलिए नाम दिया हुआ था प्रीवियस यानी पहले वाला यानी वन और करंट यानी अभी वाला यानी टू तो रिजल्ट के अंदर क्या आ जाएगा रिजल्ट के अंदर अभी वन है करंट के अंदर क्या आ जाएगा करंट के अंदर अभी टू है शुरुआत में मेरा रिजल्ट क्या होता है शुरुआत में मेरा रिजल्ट होता है फर्स्ट एलिमेंट तो शुरू में रिजल्ट के अंदर तो फर्स्ट एलिमेंट है और ये क्या है करंट एलिमेंट है अभी वाला एलिमेंट तो मैंने क्या किया दोनों को ऐड कर दिया वन और टू को ऐड कर दिया वन और टू को ऐड करके मैंने रिटर्न कर दिया तो ये जो रिजल्ट प्लस करंट होता है ये रिटर्न होके कहां स्टोर होता है ये रिटर्न होके रिजल्ट के अंदर ही स्टोर होता है तो अब नेक्स्ट लेवल पे वन की वैल्यू क्या हो जाएगी पुराना रिजल्ट प्लस करंट यानी 3 1 + 2 3 इसके अंदर आ जाएगा और अब करंट कहां चला जाएगा पहले यहां था करंट अब मेरा करंट यहां से हट के करंट यहां आ जाएगा इस बार करंट की वैल्यू क्या हो जाएगी इस बार करंट की वैल्यू हो जाएगी थ्री तो इस बार किसको प्लस करेंगे हम रिजल्ट के अंदर भी थ्री करंट के अंदर भी थ्री तो इस बार 3 + 3 क्या हो जाएगा सिक्स हो जाएगा और सिक्स की वैल्यू दोबारा से रिजल्ट के अंदर जाके स्टोर हो जाएगी एंड फिर करंट को दोबारा अपडेट करके करंट आ जाएगा यहां पे हम आ जाएंगे फोर पे तो इस बार करंट की क्या वैल्यू होगी करंट की वैल्यू होगी फर रिजल्ट की वैल्यू क्या है रिजल्ट की वैल्यू है स तो 6 + 4 आउटपुट में क्या देगा आउटपुट में मुझे देगा 10 तो ये दोनों कैलकुलेट होके 10 रिटर्न करेंगे और फाइनली अब और कुछ है नहीं करंट के पास आगे जाने के लिए तो ये जो वैल्यू है लास्ट वैल्यू जो रिटर्न होगी व्हिच विल बी इक्वल टू 10 ये 10 वैल्यू जाके हम अपने इस आउटपुट के अंदर स्टोर करा देते हैं इसीलिए जब हम इसे प्रिंट करवाते हैं हमारे पास प्रिंट होता है 10 आके तो इस तरीके से हमारा रिड्यूस मेथड वर्क करता है रिड्यूस मेथड में शुरुआत होती है दो एलिमेंट्स के साथ और हर बार जो हमारा रिजल्ट होता है वो अपडेट होता रहता है उसके अंदर टोटल रिजल्ट स्टोर होता रहता है और हम अपने करंट वेरिएबल के साथ कुछ भी ऑपरेशन जो है उसको परफॉर्म कर सकते हैं अब ये जो हमारा वेरिएबल है इसे वैसे तो हमने रिजल्ट बोला हुआ है हम चाहे तो इसे प्रीवियस भी लिख सकते हैं प्रीवियस लिख दिया कोई चेंज नहीं आएगा आउटपुट हमारा सेम रहेगा दैट इज इक्वल टू 10 अगर हमें कुछ और करना है लेट्स सपोज हमारे पास एक एरे है और इस एरे से हमें मैक्सिमम एलिमेंट निकालना है लार्जेस्ट एलिमेंट निकालना है लार्जेस्ट एलिमेंट कैसे निकालेंगे 5 6 2 1 3 बहुत सारे एलिमेंट्स है हमारे पास मुझे इसका लार्जेस्ट निकालना है तो लार्जेस्ट निकालने के लिए व्हाट वी कैन डू इज हमारे पास जो प्रीवियस करंट है हमेशा उनमें से बड़े वाला एलिमेंट रिटर्न कर दो जैसे लेट्स सपोज मेरे पास है वैल्यू फोर 5 1 पहले मैंने क्या किया इन दोनों को लिया ये मेरा प्रीवियस है ये मेरा करंट है फोर और फाइव में से कौन बड़ा है फाइव बड़ा है तो प्रीवियस और करंट में शुरुआत में फोर है इसके अंदर फाइव है मैंने क्या किया दोनों में से जो बड़ा है उसको प्रीवियस के अंदर स्टोर करा दिया तो दोनों में से बड़ा है फाइव अब प्रीवियस फाइव बन गया एंड इस बार करंट क्या बन गया इस बार करंट बन गया वन अब फाइव और वन में से कौन बड़ा है फाइव बड़ा है उसको दोबारा से प्रीवियस के अंदर स्टोर करा दो एंड नेक्स्ट करंट के पास कुछ होगा नहीं तो फाइनल आउटपुट क्या आएगा फाइव आएगा तो लार्जेस्ट हम निकाल सकते हैं तो लार्जेस्ट नंबर किसी भी एरे से फाइंड आउट करने का क्या कोड होता है हम लिख सकते हैं एरे डॉट रिड्यूस प्रीवियस एंड करंट और हम रिटर्न कर देंगे जो बड़ा होगा तो अगर प्रीवियस करंट से बड़ा है क्वेश्चन मार्क तो प्रीवियस रिटर्न कर दो नहीं तो करंट को रिटर्न कर दो तो यह कोड हम यूज कर सकते हैं टू फाइंड आउट द लार्जेस्ट नंबर अब रिफ्रेश किया तो सिक्स प्रिंट हुआ क्यों क्योंकि इस एरे के अंदर जो लार्जेस्ट नंबर है दैट इज इक्वल टू सिक्स यहां अगर रैंडम बीच में मैंने 10 लिख दिया होता तो मेरे पास 101 प्रिंट हो गया आ था रिफ्रेश करेंगे 101 प्रिंट हो गया आया तो यह हमारा कोड होता है टू प्रिंट द लार्जेस्ट नंबर इन एन एरे कैसे कंडीशन के अंदर रिड्यूस में लिख दो वो कंडीशन जो हमेशा लार्जेस्ट को रिटर्न करें स्मॉलेट को रिटर्न करना है कोई बात नहीं ग्रेटर दैन की जगह लेस दैन का साइन लगा दो सेव रिफ्रेश इस बार वन प्रिंट होकर आएगा तो इस तरीके से जो बेसिक ऑपरेशन होते हैं जिसके अंदर इनपुट तो बहुत सारे होते हैं पर आउटपुट में एक ही वैल्यू चाहिए वो वैल्यू सम हो सकती है वो वैल्यू एवरेज हो सकती है वो वैल्यू लार्जेस्ट हो सकती है वो वैल्यू स्मॉलेट हो सकती है इस तरीके के कामों के लिए हम अपने एरे डॉट रिड्यूस को यूज़ कर रहे होते हैं अब नेक्स्ट हम सॉल्व करने वाले हैं अपने कुछ ल प्रैक्टिस क्वेश्चंस को सबसे पहला क्वेश्चन हमें कह रहा है वी आर गिवन एन एरे ऑफ़ मार्क्स ऑफ़ स्टूडेंट्स फिल्टर आउट दिस शुड बी t फिल्टर आउट मार्क्स ऑफ द स्टूडेंट्स दैट स्कोर्ड 90 प्लस हमारे पास कोई भी रैंडम एरे है हम खुद से क्रिएट कर सकते हैं 87 93 अ 64 99 86 इस तरीके से हमें उन स्टूडेंट्स के मार्क्स फिल्टर आउट करने हैं जिनके 90 प्लस हैं तो ये 93 90 प् है 99 90 प् है इनको मैं फिल्टर आउट करके एक नया एरे बनाना है तो एक बार इसे खुद ट्राई करना है उसके बाद सॉल्यूशन को देखना है तो सबसे पहले तो अपने मार्क्स का हम एरे बना लेते हैं लेट मार्क्स इज इक्वल टू 97 64 32 49 99 96 86 ये काफी सारे मार्क्स हो गए अब कभी भी अगर हमें किसी भी कंडीशन के बेसिस पे फिल्टर आउट करनी है वैल्यूज एरे में तो हमें पता है हमें अपने फिल्टर मेथड को यूज करना पड़ेगा उसे यूज करने के लिए हम लिखते हैं एरे का नाम मार्क्स फिर लिखेंगे डॉट फिल्टर एंड उसके बाद कॉल बैक के अंदर अपनी वैल्यूज ले लेंगे वैल्यू पर हम कंडीशन लगा देंगे तो वैल्यू पे क्या कंडीशन लगेगी हमें चाहिए वो सारी वैल्यूज जो ग्रेटर दन है हमारे 90 इक्वल टू करने की जरूरत नहीं है और इसी कंडीशन के बेसिस पे हम रिटर्न कर देंगे अपनी वैल्यूज को तो आप नोटिस करोगे फिल्टर के अंदर जो कॉल बैक होता है दो ही वैल्यूज रिटर्न करता है इवेंचर या फॉल्स या तो वैल्यू ग्रेटर दन 90 ट्रू दे देगा या ये फाल्स दे देगा जिस भी वैल्यू के लिए ट्रू रिटर्न होगा वो वैल्यू नए एरे के अंदर ऐड होती है तो यहां एक न्यू एरे हम क्रिएट कर लेते हैं या इसको हम अपना टॉपर्स का एरे कह देते हैं दिस इज माय टॉपर्स एरे एंड वी कैन प्रिंट द टॉपर्स एरे सेव रिफ्रेश 97 99 96 ये सारी की सारी वैल्यूज हमारे पास यहां पे स्टोर होके आ गई सेकंड क्वेश्चन की तरफ बढ़ते हैं टेक अ नंबर n एज एन इनपुट फ्रॉम द यूजर यूजर क्या करेगा प्रॉन्प्ट में हमें इनपुट के अंदर अपना नंबर दे देगा n क्रिएट एन एरे ऑफ नंबर्स फ्रॉम वन टू n अगर यूजर ने मुझे पांच दिया तो उसके बेसिस पे मुझे एक नया एरे बनाना है जिसके अंदर 1 2 3 4 5 हो अगर उसने मुझे फोर दिया तो मुझे नया एरे बनाना है जिसके अंदर 1 2 3 4 तो इस तरीके से मुझे एक नया एरे क्रिएट करना है सबसे पहले तो इतना ही काम कर लेते हैं लेट्स आस्क द यूजर फॉर नंबर n वी कैन यूजर प्रोमट प्रोमट के अंदर हम लिख सकते हैं एंटर अ नंबर तो उसे ए के अंदर स्टोर करा लेंगे और फिर हम एक एरे बना सकते हैं अब ये जो एरे है शुरुआत में वी कैन कीप इट एमटी इसके अंदर वन से लेके ए तक वैल्यूज को हमें स्टोर करना है तो एक तो है तरीका वैल्यूज को स्टोर करने का एरे ऑफ जीरो इ 1 इस तरीके से और दूसरा तरीका होगा कि हम एक अच्छा सा लूप लगा ले उसके अंदर वैल्यूज को स्टोर करें तो हम एक लूप लगा सकते हैं लेट i इक्वल 0 i < n या वन से स्टार्ट कर लेते हैं इस लूप को i = 1 i ले इ n i+ प् वन से लूप स्टार्ट हो रहा है n तक जाएगा हर बार मुझे क्या करना है एरे ऑफ इंडेक्स के अंदर आ को स्टोर कराना है पहले i की वैल्यू वन होगी तो वन स्टोर होगा फिर टू होगी तो टू स्टोर्ड होगा फिर थ्री होगी तो थ्री स्टोर्ड होगा फिर फोर होगी तो फोर स्टोर्ड होगा और इंडेक्स क्या होना चाहिए इंडेक्स होना चाहिए हर बार i-1 वन जीरो एथ इंडेक्स पे स्टोर होगा टू फर्स्ट इंडेक्स पे स्टोर होगा थ्री सेकंड इंडेक्स पे स्टोर होगा दिस विल बी ऑन सेकंड इंडेक्स फोर थर्ड इंडेक्स प स्टोर होगा इस तरीके से तो हम अपना एरे बना लेंगे और एक बार हम इस एरे को प्रिंट करवा लेंगे सेव किया रिफ्रेश किया लेट्स सपोज हमने पास किया नंबर फ तो ये हमारे फाइव नंबर्स का एरे आ गया रिफ्रेश किया हमने पास किया 10 तो ये हमारे 10 नंबर्स का एरे आ गया रिफ्रेश किया हमने पास किया सेन तो ये हमारे सेवन नंबर्स का एरिया आ गया अब आ जाते हैं अपने क्वेश्चन की तरफ तो हमें क्या करना है यूज द रिड्यूस मेथड टू कैलकुलेट सम ऑफ ऑल नंबर्स इन द एरे तो रिड्यूस मेथड को यूज करके सारे के सारे नंबर्स का हमें सम कैलकुलेट करना है कैसे करेंगे एरे डॉट रिड्यूस रिड्यूस के अंदर कॉल बैक पास कर देंगे एक हो जाएगी प्रीवियस वैल्यू प्रीवियस कह सकते हैं इसको एक हो जाएगी करंट वैल्यू हम क्या कर हर बार रिटर्न कर देंगे प्रीवियस प्लस करंट को इसको प्रीवियस की जगह सम है तो हम इसको आई विल लाइक टू कॉल इट रिजल्ट कॉल इट रिजल्ट प्लस करंट और लास्ट में हम जो हमारा फाइनल सम होगा वह हमें मिल जाएगा और इसे हम चाहे तो प्रिंट करवा सकते हैं कसोल डलॉग सम सेव किया रिफ्रेश किया हमें शुरू के चार नंबर्स का सम चाहिए तो ये हमारा एरे होगा चार नंबर्स का सम 10 रिफ्रेश किया मुझे शुरू के 10 नंबर्स का सम चाहिए ओके 10 नंबर्स का सम इ इक्व 55 फ्रेश किया मुझे शुरू के 20 नंबर्स का सम चाहिए सो दिस इज माय एरे ऑफ 20 नंबर्स एंड सम सारे के सारे 20 नंबर्स का हो जाएगा 20010 तो ये हमारा फर्स्ट पार्ट हो गया सेकंड पार्ट हमें कह रहा है यूज द रिड्यूस मेथड टू कैलकुलेट प्रोडक्ट ऑफ ऑल नंबर्स इन द एरे ये जो प्रोडक्ट ऑफ ऑल नंबर्स मतलब अगर चार नंबर्स है तो 1 * 2 * 3 * 4 चाहिए मुझे पांच नंबर्स है तो 1 * 2 * 3 * 4 * 5 चाहिए हमें मैथ की भाषा में इसको हम फैक्टोरियल कहते हैं फैक्टोरियल ऑफ n इसे हम कहेंगे फैक्टोरियल ऑफ 4 इसे हम कहते हैं फैक्टोरियल ऑफ 5 तो वन से लेके जब n तक नंबर्स को मल्टीप्लाई करते हैं तो इस चीज को मैथ के अंदर फैक्टोरियल कहा जाता है तो बेसिकली वीी आर ट्राइट कैलकुलेट द फैक्टोरियल ऑफ अ नंबर n कैसे कैलकुलेट करेंगे रिड्यूस से कुछ नहीं करना जैसे सम कैलकुलेट किया था यहां पे प्रिंट कर देते हैं सम इज इक्वल टू जैसे सम कैलकुलेट किया था वैसे ही फैक्टोरियल कैलकुलेट कर सकते हैं हम लिखेंगे एरे डॉट रिड्यूस रिजल्ट एंड करंट और इस बार रिजल्ट मल्टीप्ला बाय करंट को रिटर्न कर देंगे और यह हमारे पास आ जाएगा हमारा फैक्टोरियल एंड इसी को हम प्रिंट करवा देंगे कंसोल डलॉग फैक्टोरियल इ इक्वल टू दिस वैल्यू सेव कर लिया रिफ्रेश किया लेट्स सपोज हमें शुरू के तीन नंबर्स का फैक्टोरियल चाहिए फैक्टो ऑफ 3 = 6 यानी 1 * 2 2 हो जाएगा 2 * 3 6 हो जाएगा शुरू के चार नंबर्स का चाहिए दैट विल बी इक्वल टू 24 1 * 2 2 हो गया 2 * 3 हमारे पास 6 हो गया 6 * 4 24 हो गया 5 का आई थिंक इट्स 120 रिफ्रेश किया वी हैव 120 1 * 2 2 हो गया 2 * 3 6 हो गया 6 * 4 24 हो गया 24 * 5 120 हो गया इस तरीके से डिफरेंट डिफरेंट नंबर्स का हम फैक्टोरियल कैलकुलेट कर सकते हैं ये चीज याद रखनी है कि सम करना सम करने में हम बहुत सारे नंबर्स ले सकते हैं पर मल्टीप्लिकेशन करने में नंबर्स बहुत जल्दी साइज में इंक्रीज होते हैं इसलिए बड़े नंबर्स का सम फैक्टोरियल कैलकुलेट नहीं करना जैसे इफ आई राइट कि मुझे तो 100 का फैक्टोरियल कैलकुलेट करना है तो यह क्या आ गया यह ऐसी वैल्यू आएगी जो हम समझ नहीं पा रहे तो बेसिकली बहुत बड़ा नंबर आ जाएगा सम कैलकुलेट ट हो जाएगा सब में प्रॉब्लम नहीं है पर नंबर बहुत बड़ा हो जाएगा फैक्टोरियल के लिए तो इसीलिए फैक्टोरियल के लिए 10 का फैक्टोरियल कैलकुलेट कर सकते हैं आप नोटिस कर सकते हो 10 का फैक्टोरियल ही बहुत बड़ा नंबर हो जाता है तो 10 से छोटी-छोटी वैल्यूज ही देनी है जैसे सेवन का आप कैलकुलेट कर सकते हो इट विल बी 5040 तो इस तरीके से हम अपने मेथड्स को यूज़ कर सकते हैं और अपने लिए डिफरेंट डिफरेंट इंटरेस्टिंग फंक्शंस को बना के प्रैक्टिस कर सकते हैं जो भी चीज जो भी काम आपके दिमाग में आए उसको यूज करो उसको एक फंक्शन बना दो ताकि वो रीयूज बल कोड हो जाए रीयूज बल यानी उसे बार-बार बार-बार हम इवोक कर सकते हैं जब भी हमें उसकी जरूरत पड़े अब डॉम के बारे में बात करने से पहले अपने कुछ-कुछ बेसिक्स को हम अच्छे से क्लियर करने वाले हैं सबसे पहले हम बात करेंगे अबाउट द थ्री मुस्केटियर्स ऑफ वेब डेवलपमेंट थ्री मुस्केटियर्स इनको हम कह सकते हैं इनको हम अपनी पिक्चर का हीरो कह सकते हैं इनको हम अपने अमर अकबर एंथनी कह सकते हैं बेसिकली जिन तीन पिलर्स के ऊपर पूरा का पूरा हमारा फ्रंट एंड डेवलपमेंट फ्रंट एंड वेब डेवलपमेंट खड़ा होता है वो होते हैं हमारे एटीएमएल हमारी फ्रंट एंड डेवलपमेंट सीखने की जो शुरुआत होती है वेब डेवलपमेंट सीखने की शुरुआत होती है वो इन्हीं तीन टेक्नोलॉजीज के साथ होती है होती है अब ये जो तीनों टेक्नोलॉजीज हैं मिलके किसी भी वेब पेज या किसी भी वेबसाइट को बनाती हैं जानते हैं कैसे html2text क्लिक करने पर कुछ अच्छा सा इफेक्ट अगर हमें शो करना है मूव करना है एलिमेंट्स को तो उस तरीके की चीजें और जावास्क्रिप्ट का काम होता है फाइनली हमारे वेब पेज के ऊपर लॉजिक को ऐड करना यानी बटन के क्लिक करने से हमारे पेज के ऊपर क्या चेंज होना चाहिए या एक बार हमने किसी फॉर्म को सबमिट कर दिया तो उसके बाद हमारे पास रजिस्टर्ड हो गया यूजर इस तरीके का कोई मैसेज पॉप अप करे इस तरीके की जो चीजें होती है वेबसाइट पे ये सारा का सारा लॉजिकल पार्ट होता है और इसे और भी आसान भाषा में समझाऊं आपको हम अज्यू करते हैं हमारे पास एक खाली प्लॉट है जिसके ऊपर मुझे घर बनाना है और घर क्या है घर हमारी वेबसाइट है अब सबसे सबसे पहले प्लॉट के ऊपर हम क्या करेंगे एक के ऊपर एक ईट रखेंगे सबसे पहले अपने घर का हम बेसिक ढांचा बनाएंगे बेसिक स्ट्रक्चर बनाएंगे इसी तरीके से एचटीएमएल पहले हमारे कोर्ड का बेसिक ढांचा बेसिक स्ट्रक्चर बनाता है फिर हम डिसाइड करेंगे कि घर के अंदर हमें क्या पेंट करना है हमारी जो लाइट है वो कहां पे हमें लगानी है हमारे जो फैंस है वो कहां पे लगाने हैं स्विच बोर्ड है स्विच बोर्ड का क्या कलर होना चाहिए दीवारों के साथ कंट्रास्ट में रखना है मैचिंग में रखना है तो इस तरीके जो स्टाइलिंग वाली चीजें है कि सोफों का क्या कलर होना चाहिए वो आ जाती है हमारी स्टाइलिंग का पार्ट यानी सीएसएस का पार्ट एंड फिर फाइनली हमें डि करना पड़ेगा कि हमारे जो स्विच बोर्ड हैं उनको क्लिक करने से लाइट ऑन ऑफ भी होनी चाहिए तो वो कनेक्शंस हमें जोड़ने पड़ेंगे वो जो वायर्स होते हैं इंटरनली उनको हमें जोड़ना पड़ेगा कि किसी एक बटन को क्लिक करने से हमारा फैन भी चलना चाहिए दूसरे बटन को क्लिक करने से हमारी लाइट ऑन होनी चाहिए किसी बटन को क्लिक करने से हमारा फ्रिज ऑन होना चाहिए तो इस तरीके का जो लॉजिकल कनेक्शन है जो एक्चुअली काम होता है वो हमारे लिए करता है हमारा जावास्क्रिप्ट तो इन तीनों कंपोनेंट्स को मिलाकर हम किसी भी वेब पेज को क्रिएट कर सकते हैं अब वैसे तो जितना भी एटीएमएल सीएसएस एंड जावास्क्रिप्ट हम लिख रहे होंगे उसका बेसिक बेसिक मैं आपको समझाते हुए चलूंगी कोड के साथ में जितनी भी हम फाइल्स को क्रिएट करेंगे बट उसके साथ में भी अगर आपको html5 से जाके हम रिवीजन कर सकते हैं बाकी मेरे साथ के साथ जो हम कोड करते रहेंगे उसमें हमें ज्यादा कोई परेशानी नहीं आएगी अगर हमने नहीं भी पढ़ा क्योंकि मोस्टली चीजें हमारे लिए बेसिक होने वाली है अगर आपको जावास्क्रिप्ट समझ में आ रहा था तो html4 के अंदर तो जावास्क्रिप्ट में हमने तीन फाइल्स बनानी है सबसे पहले मैंने बनाई है index.htm इसे हम कुछ भी नाम दे सकते हैं बस लास्ट में ड html.com html2text अंदर हमने वी हैव रिटन समथिंग कॉल्ड लैंग्वेज इज इक्वल टू e इसका मतलब है कि हमारी जो लैंग्वेज होगी वो इंग्लिश होगी प्राइमरी हमारा कोड लिखने के लिए बाकी इन्हें हम एट्रिक्स मतलब टैग्स के अंदर एक्स्ट्रा इंफॉर्मेशन शो करना चाहते हैं तो बॉडी टैग के अंदर हमारा सारा कंटेंट आता है और ये है हमारा हेड टैग हेड टैग के अंदर जनरली हम अपनी मेटा इंफॉर्मेशन को लिखते हैं मेटा इंफॉर्मेशन इज बेसिकली कि हमारी जो वेबसाइट है उसका टाइटल क्या होने वाला है या अगर हमें सीएसएस फाइल को लिंक करना है तो उसको किस तरीके से करेंगे अगर हम एक्सटर्नल बूटस्ट्रैप जैसा कोई फ्रेमवर्क यूज़ करना चाहते हैं लद जरूरी नहीं आपको पता हो पर अगर हमें किसी और की सीएसएस यूज़ करनी है तो उसे कैसे लिंक कर सकते हैं तो कई सारी चीजें होती हैं ये सारी चीजें जनरली हमारे हेड टैग के अंदर आती है तो यहां पर ये हमारा हेड टैग आ गया ये हमारा बॉडी टैग आ गया अब ये जो टाइटल है इसे हम चाहे तो चेंज भी कर सकते हैं अभी के लिए इसको डॉक्यूमेंट रखते हैं अभी के लिए सेव कर लेते हैं एंड हम जा सकते हैं अपने फोल्डर के अंदर फोल्डर के अंदर अपनी index.htm पर हम डबल क्लिक कर सकते हैं वो हमारे ब्राउजर में हमारे लिए खुल जाएगी ब्राउजर में आप नोटिस करेंगे रिफ्रेश करके कि हमारे लिए जो हम टाइटल लिखते हैं वो टॉप ऑफ द स्क्रीन पर दिख कर आता है हमारे टैब में टॉप पे आता है जैसे डॉक्यूमेंट लिखा हुआ है डॉक्यूमेंट लिखा हुआ आ रहा है पर इसे अगर हम कर देंगे लेट्स मेक इट अपना कॉलेज या जेएस विद अपना कॉलेज सेव रिफ्रेश तो ये क्या आ गया जेएस विद अपना कॉलेज हमारे पास लिखकर आ गया तो ये ये होता है html2text लिखा हेडिंग टैग्स के बीच में इंफॉर्मेशन सेव किया रिफ्रेश किया तो क्या आ गई मेरे लिए मेरी स्क्रीन के ऊपर एक हेडिंग प्रिंट होके आ जाएगी इस हेडिंग को हम यह भी लिख सकते हैं डॉम डेमो बाय अपना कॉलेज इस तरीके से मैंने कोई हेडिंग लिखी रिफ्रेश किया तो ये मेरी पूरी की पूरी हैडिंग मेरे पास आ गई साथ के साथ हम चाहे तो कोई पैराग्राफ भी लिख सकते हैं दिस इज अ या लेट्स लर्न अबाउट डॉम कॉन्सेप्ट्स इन डिटेल सेव रिफ्रेश तो यह हमारे पास हमारा एक पैराग्राफ प्रिंट होकर आ गया हम चाहे तो कोई और हेडिंग भी बना सकते हैं लेट्स क्रिएट एन h4 हेडिंग टॉपिक वन इसके अंदर हम लिख सकते हैं अपना स्टार्टर कोड सेव रिफ्रेश तो ये हमारा टॉपिक वन आ गया स्टार्टर कोड आ गया इस तरीके से चीजें आ गई हम चाहे तो एक बटन भी क्रिएट कर सकते हैं तो हम एक बटन बना सकते हैं दिस बटन सेज क्लिक मी क्लिक मी लिखा हुआ है सिंपली बटन के ऊपर एंड ये हमने लिख दिया क्लिक मी अब ये जो टैग्स हैं ये ऐसा नहीं है मैं अपनी मन मर्जी से कुछ भी टैग बना रही हूं आप चाहे तो अपनी मन मर्जी से भी हम टैग्स बना सकते हैं पर ये जो टैग्स हैं ऑलरेडी हैं तो ऑलरेडी एजिस्टिफाई कोड के अंदर हमारे पास आके रिप्रेजेंट हो जाती है अब बात करते हैं या इसे थोड़ा सा ज़ूम इनन कर लेते हैं स्क्रीन को अब बात करते हैं कि इस इंफॉर्मेशन के अंदर हम अपना स्टाइल कैसे ऐड कर सकते हैं जब भी हम स्टाइल की बात करते हैं स्टाइल इंक्लूड्स थिंग्स लाइक कलर बैकग्राउंड कलर फॉन्ट साइज हाइट विड्थ इस तरीके की चीजें स्टाइल . सीएए के अंदर आ जाते हैं एंड यहां पर लेट्स सपोज हम अपनी जो h1 हेडिंग है उसे देना चाहते हैं एक कलर एंड इसे हम कलर देना चाहते हैं ब्लू के इक्वल तो इस तरीके से हम लिख सकते हैं h1 फिर अपने कर्ली ब्रेसे और उसके बाद हम लिख सकते हैं कलर प्रॉपर्टी होती है कलर हमारी बहुत सारी प्रॉपर्टीज होती है हम चाहे तो फॉन्ट साइज चेंज कर सकते हैं फैमिली चेंज कर सकते हैं फॉन्ट वेट यानी कितना बोल्ड कितना कम बोल्ड हमें दिखाना है डिस्प्ले इस तरीके से काफी सारी प्रॉपर्टीज होती है टेक्स्ट से रिलेटेड टेक्स्ट डेकोरेशन जैसे टेक्स्ट डेकोरेशन इफ आई डू इट एज लाइन थ्रू मैं आपको दिखाने वाली हूं हाउ इट इज गोइंग टू बी इंटरेस्टिंग तो यह तो हो गया कि हमने कुछ-कुछ स्टाइलिंग को ऐड कर दिया इसे सेव कर लेते हैं पर जब हम रिफ्रेश करेंगे कोई चेंज नहीं आएगा क्योंकि यह सीएसएस फाइल अभी इक्स . html5 को index.htm से जोड़ना होता है तो उसके लिए हम लिखते हैं अपना स्टाइल टैग तो स्टाइल टैग का काम होता है टू कनेक्ट html5 हमें अपने कलर को डिफाइन करना है तो कलर को हम दे सकते हैं अपना रेड कलर या फिर इसे वीएस कोड हमें अच्छे-अच्छे सजेशन भी देता है हम इसे दे सकते हैं अपना ब्लू कलर तो इस तरीके से हम कलर दे सकते हैं सेव कर लेंगे अभी सेव करेंगे और रिफ्रेश करेंगे तो एज सच हमारे कोड के अंदर कुछ चेंज नहीं आएगा क्योंकि अभी तक इस style.css को हमने अपने index.htm से तो अटैच ही नहीं किया अटैच करने के लिए हमें यूज़ करना पड़ता है अपने स्टाइल टैग को स्टाइल टैग क्या होता है स्टाइल टैग इज़ द टैग दैट इज यूज्ड टू कनेक्ट यहां पर भी लिख सकते हैं सेव किया रिफ्रेश किया तो ये हेडिंग क्या हो गई ये हेडिंग ब्लू कलर के अंदर आ गई अब हम चाहते हैं इसके ऊपर और स्टाइलिंग ऐड करना जैसे आई कैन ऐड अ टेक्स्ट डेकोरेशन ऑफ लाइन थ्रू इस तरीके से बहुत सारी प्रॉपर्टी होती है तो क्या होगा एक लाइन आ जाएगी इसके ऊपर तो इस तरीके से बहुत सारी चीजें हैं जो की जा सकती हैं हम इसे चाहे तो एक बैकग्राउंड कलर दे सकते हैं वीएस कोड काफी सारे सजेशंस भी देगा आपको कि क्या-क्या प्रॉपर्टीज हो सकती हैं बैकग्राउंड कलर में वी कैन लेट्स सपोज गिव इट अ बैकग्राउंड कलर ऑफ अ येलो बैकग्राउंड कलर इसको दे देते हैं सेव किया रिफ्रेश किया तो ये बैकग्राउंड कलर येलो एंड ऊपर हमारे पास ब्लू कलर आ गया मैंने क रही है बहुत अच्छी स्टाइलिंग है बट इस तरीके से स्टाइलिंग दी जा सकती है बहुत सारी चीजें होती हैं स्टाइलिंग के अंदर हम फॉन्ट रिलेटेड काफी सारी प्रॉपर्टीज हैं जिनको यूज कर सकते हैं फॉन्ट साइज फॉन्ट फैमिली फॉन्ट वेट फॉन्ट स्टाइल फॉन्ट डिस्प्ले हम टेक्स्ट रिलेटेड बहुत सारे टेक्स्ट डेकोरेशन टेक्स्ट अलाइन ट्रांसफॉर्म शैडो बैकग्राउंड से रिलेटेड काफी सारी चीजें हैं जो यूज़ कर सकते हैं तो ये तो हो गया बहुत बेसिक तरीका स्टाइलिंग देने का पर हम इस तरीके को यूज नहीं करेंगे क्योंकि इस तरीके से क्या होता है हो ना तो आपकी html5 बड़ी हो जाएगी एंड एक पॉइंट के बाद चीजें कन्फ्यूजिंग हो सकती हैं तो हम कोशिश करते हैं इनफैक्ट कोशिश क्या करते हैं अच्छी डेवलपमेंट प्रैक्टिस यही है html5 में लिखो जावास्क्रिप्ट का कोड जावास्क्रिप्ट फाइल के अंदर लिखो तो ये जो कोड है इसे यहां से हटाकर हम यहीं पर लिख रहे होते हैं दिस इज आवर बेसिक कोड इसको सेव कर लेंगे रिफ्रेश करेंगे तो वो दोबारा हट गया क्यों क्योंकि अभी स्टाइल सीएसए को तो हमने कनेक्ट ही नहीं किया स्टाइल ड सीएए को कनेक्ट करने के लिए हम लिखते हैं लिंक आरल रिलेशन इ इक्वल टू स्टाइल यानी हम अपना एक लिंक कनेक्ट कर रहे हैं किसके साथ स्टाइल शीट के साथ और एफ इ इक्ट style.css तो दो एटिबल होते हैं हमारे पास जब टैग्स के अंदर हम एक्स्ट्रा इंफॉर्मेशन देते हैं जैसे हमारा लिंक टैग हो गया इसके अंदर एक्स्ट्रा इंफॉर्मेशन देते हैं तो उसको हम एटिबल देते हैं एटिबल यानी समथिंग इज इक्वल टू समथिंग तो रिलेशन क्या है हम किसको जोड़ना चाहते हैं स्टाइल शीट को जोड़ना चाहते हैं सीएसएस स्टाइल शीट है कैस्केडिंग स्टाइल शीट्स एचआरएफ क्या है मतलब लिंक कहां है आपकी स्टाइल शीट का स्टाइल . सीएए सेव कर लिया रिफ्रेश कर लिया तो दोबारा से अब स्टाइल हमारा अप्लाई होने लग गया अब अब चाहे तो स्टाइल ड सीएसए के अंदर हम बहुत सारी चीजें कर सकते हैं जैसे मेरा मन किया दैट अपनी पूरी की पूरी बॉडी के लिए यानी ये जो पूरा का पूरा बॉडी टैग है इसके लिए आई वांट टू मेक द बैकग्राउंड कलर या बैकग्राउंड कलर टू बी इक्वल टू पिंक सेव किया रिफ्रेश किया तो क्या हुआ पूरा का पूरा बैकग्राउंड कलर आई हैव इट एज पिंक तो सारे के सारे चेंजेज कर सकते हैं अगर बटन को मुझे बैकग्राउंड कलर देना है लेट्स सपोज आई गिव इट अ बैकग्राउंड कलर ऑफ ब्लू सेव रिफ्रेश तो ये ब्लू कलर का हो गया इसे टेक्स्ट कलर हम वाइट दे सकते हैं तो इसे टेक्स्ट कलर वाइट दे दिया रिफ्रेश किया तो ये वाइट हो गया तो इस तरीके से बेसिक बेसिक जो सीएसएस है उसे हम लिख सकते हैं अभी मैं आपको कलर एंड बैकग्राउंड कलर के ज्यादा एग्जांपल्स दे रही हूं सीएसएस के अंदर बिकॉज़ इट इज वेरी इजी टू अंडरस्टैंड कि कलर और बैकग्राउंड कलर का क्या मतलब होता है पर आपको और ज्यादा डिटेल में सीएसएस को पढ़ना है डिफरेंट प्रॉपर्टीज को पढ़ना है बाकी सारी चीजें पढ़नी है तो उसके लिए हम क्या कर सकते हैं उसके लिए जाके हम अपना वन शॉट रेफर कर सकते हैं वन शॉट रेफर कर सकते हैं या फिर उस वन शॉट के हम नोट्स को भी रेफर कर सकते हैं तो ये तो हो गई हमारी बेसिक स्टाइलिंग एंड इस तरीके से हम स्टाइलिंग ऐड कर सकते हैं तो हमने अभी तक क्या किया मतलब मैं चाहूं तो यहां पर लिख सकती हूं अ एक अलर्ट क्रिएट कर लेते हैं हम चाहे तो यहां पर एक अलर्ट क्रिएट कर सकते हैं हेलो इस तरीके का एक अलर्ट क्रिएट कर दिया सेव कर दिया रिफ्रेश कर लिया तो जैसे ही पेज को खोलेंगे नोटिस करना है आपको कोई टेक्स्ट हमारे पास नहीं आया हमारे पास आया सिंपली एक अलर्ट जैसे ही इस पर ओके क्लिक करेंगे वैसे हमारे पास पूरा कोड डिस्प्ले हो ग आएगा अब यहां पर एक चीज आपको नोट करनी है कि जब भी हमारे पास जावास्क्रिप्ट का कोड आता है और हम कोई अलर्ट जैसी चीज प्रोमट जैसी चीज क्रिएट करते हैं तो वो क्या करता है टेंपरेरिली एग्जीक्यूशन को पॉज कर देता है मतलब हमारा पूरा पेज वेट करता है जब तक हमारा प्रोमट या हमारा अलर्ट का जो विंडो है जो पॉपअप है वो बंद नहीं हो जाता टू एग्जीक्यूट द कोड फदर तो ये एक एक्स्ट्रा चीज है जिसको आप याद रख सकते हैं तो ये हमने स्क्रिप्ट टैग के अंदर अपना कोड लिख दिया जावास्क्रिप्ट का पर जनरली हम ऐसे नहीं लिखते हमें जितना भी कोड लिखना होता है जेएस का उसको हम स्क्रिप्ट जए के अंदर लिखते हैं जैसे यहां हम कसोल डलॉग करवा सकते हैं हेलो एंड इसे कर लेते हैं सेव एंड index.htm के अंदर स्क्रिप्ट को यानी इस फाइल को जोड़ने के लिए हम क्या लिखते हैं हम लिखते हैं सोर्स इ इक्वल ट स्क्रिप्ट ज तो यह सोर्स मतलब हम लिंक बता रहे हैं अपनी जावास्क्रिप्ट फाइल का इसको सेव किया रिफ्रेश किया अब चाहे तो इंस्पेक्ट कर सकते हैं इंस्पेक्ट जैसे ही करेंगे कंसोल के अंदर जाएंगे तो हमारे पास क्या प्रिंट होके आएगा हेलो प्रिंट होके आएगा तो हमें क्लियर पता चल गया कि हमारी जो script.js है दैट इज़ नाउ कनेक्टेड टू आवर index.htm अब हम चाहे तो script.js के अंदर जाके एक अलर्ट भी क्रिएट कर सकते हैं लेट्स राइट अपना कॉलेज इस तरीके का अलर्ट क्रिएट किया रिफ्रेश किया तो ये हमारे पास अलर्ट भी क्रिएट होके आ गया तो तीनों चीजों को मिक्स करके हमने कंटेंट डाल दिया है हमने कुछ स्टाइल ऐड कर दि है साथ के साथ हमने कुछ-कुछ लॉजिक ऐड करने की कोशिश की है अब एक बार क्या करेंगे अपने इंस्पेक्ट विंडो को थोड़ा सा समझेंगे जब भी हम इंस्पेक्ट करते हैं यानी इंस्पेक्ट करके जब हम ये विंडो खोलते हैं तो हमारे पास ऊपर कई सारे टैब्स आते हैं इनमें से सबसे इंपॉर्टेंट टैब है हमारे एलिमेंट्स एंड कंसोल एलिमेंट्स टैब के अंदर हमारा सारा का सारा html5 में किसी भी पेज का एचटीएमएल आपको एलिमेंट्स के अंदर भी मिल जाएगा जैसे अगर मैं आई गो हियर एलिमेंट्स के अंदर मुझे बहुत सारा एचटीएमएल कोड यहां पे दिखाई दे रहा है ये सारा का सारा एचटीएमएल कोड क्या है ये स्पेज का एचटीएमएल है जो मुझे दिख रहा है कंसोल के अंदर जाएंगे तो इसका कोड मुझे दिखने लग जाएगा तो इस तरीके से बहुत सारी चीजें हैं जो आप जाके इंस्पेक्ट करके भी आप नोटिस कर सकते हो अब जब हम एलिमेंट्स के अंदर जाएंगे यहां मुझे दिख रहा है दिस इज माय htl1041 हर करूं मेरा h4 हाईलाइट हो रहा है बटन के ऊपर हर कर रहे हैं बटन हाईलाइट हो रहा है पैराग्राफ के ऊपर हर कर रहे हैं पैराग्राफ हाईलाइट हो रहा है और हम चाहे तो एलिमेंट्स को जाके सिलेक्ट भी कर सकते हैं ये हमारे पास कुछ एरो होगी जैसे ही इस एरो के ऊपर हम क्लिक करेंगे और लेफ्ट में अपने पेज के ऊपर जाएंगे वो एलिमेंट उस टैग से रिलेटेड एलिमेंट से रिलेटेड इंफॉर्मेशन हमारे पास होगी जैसे यहां पे दिखा रहा है h1 का कलर हमें दिखा रहा है उसका बैकग्राउंड कलर हमें दिखा रहा है हमें फॉन्ट साइज दिखा रहा है 32 पिक्सल्स है हमारा फंट साइज तो काफी सारी इंफॉर्मेशन आ रही है मार्जिन की इंफॉर्मेशन दिखा रहा है नीचे जाएंगे h4 के लिए दिखा रहा है साइजिंग भी दिखाता है बहुत सारी चीजें फॉन्ट साइज है 16 पिक्सल्स कौन सा फॉन्ट यूज़ हो रहा है टाइम्स जो डिफॉल्ट है मेरे ब्राउजर का ये हमारा बटन है बटन के लिए उसका कलर दिखा रहा है फॉन्ट दिखा रहा है दिस इज एरियल फॉन्ट नेम दिखा रहा है रोल दिखा रहा है रोल इज इक्वल टू बटन तो सारी रिलेटेड इंफॉर्मेशन हमारे पास आ जाती है साथ के साथ वी कैन आल्सो एक्सेस द सीएसएस सीएसएस कहां से आती है सीएसएस एलिमेंट्स के ऊपर ही जब आप जाओगे तो नीचे की तरफ आती है नीचे की तरफ हमारे पास स्टाइल्स का एक टैब होता है जिसमें आपको दिखेगा कि बॉडी को हमने क्या दिया बॉडी को हमने बैकग्राउंड कलर पिंक दे रखा है जैसे ही इस चेक बॉक्स के ऊपर आप क्लिक करोगे वो बैकग्राउंड पिंक हट जाएगा जैसे ही ऐड करेंगे ऐड भी हो जाएगा बॉडी को और बाय डिफॉल्ट डिस्प्ले ब्लॉक मार्जिन ये कुछ-कुछ प्रॉपर्टीज हैं सीएसएस की जो मिल रखी हैं हम चा तो इस तरीके से पूरा का पूरा मॉडल स्टडी कर सकते हैं सीएसएस का बस उसके डिटेल में नहीं जाएंगे क्योंकि ऑलरेडी चीजें कवर कर रखी हैं फॉर एग्जांपल मुझे अपने बटन टैग के लिए इंफॉर्मेशन चाहिए तो मैं बटन टैग के ऊपर जाके हर करके क्लिक कर सकती हूं तो मेरे पास नीचे स्टाइल की इंफॉर्मेशन आ गई कि इसको बैकग्राउंड कलर ब्लू दे रखा है इसको कलर हमने वाइट दे रखा है टेक्स्ट कलर हम चाहे तो बैकग्राउंड कलर को चेंज करके आई कैन आल्सो मेक इट पर्पल तो ये क्या हो गया पर्पल हो गया बट हमेशा की तरह कंसोल के अंदर या इंस्पेक्ट करने के बाद जितने भी चेंजेज होते हैं सारे टेंपरेरी होते हैं जैसे ही रिफ्रेश करूंगी दोबारा से मेरा बैकग्राउंड कलर मेरे पास ब्लू हो जाएगा तो जो भी आप चेंजेज करते हो यहां पर इन एलिमेंट्स के अंदर स्टाइल के अंदर कंसोल के अंदर सारे के सारे टेंपरेरी चेंजेज हैं पर हां फाइल के चेंजेज परमानेंट हैं जो फाइल मैंने मैंने लिख दिया था कि बटन का कलर ब्लू ही होना चाहिए वो ब्लू ही कलर आपको दिखाई देगा तो एलिमेंट्स के अंदर हम जनरली देखते हैं अपने नेटवर्क वाला टैब इंपॉर्टेंट होता है परफॉर्मेंस वाला इंपॉर्टेंट होता है एप्लीकेशन वाला इंपॉर्टेंट होता है पर उनके अभी इतना ज्यादा डिटेल में नहीं जाएंगे लेट्स फॉर राइट नाउ फोकस ऑन html5 के अंदर लिखने के क्या-क्या फायदे हैं वो भी मैं आपको बता देती हूं सबसे पहला तो जब भी हम अपने पूरे जावास्क्रिप्ट कोड को एक अलग फाइल के अंदर लिखते हैं तो वो हमारे लिए ये रीडेबिलिटी बढ़ाता है रीडेबिलिटी बढ़ाने का मतलब है ये मैं आपको बेनिफिट्स बता रही हूं अलग जावास्क्रिप्ट फाइल बनाने के वरना चाहे तो हम कोड को हमने अलग फाइल के अंदर डाल के उसका टुकड़ा बना दिया सीएसएस फाइल को अलग फाइल के अंदर डाल के उसका टुकड़ा बना दिया जावास्क्रिप्ट कोड को अलग फाइल के अंदर डाल के उसका टुकड़ा बना दिया एंड थर्ड इट आल्सो हेल्प्स विद ब्राउजर कैशिंग क्योंकि अगर आपने जावास्क्रिप्ट को इंडिविजुअल फाइल की तरह लग लिया तो नेक्स्ट टाइम जब आप अपने टैब को या वेबसाइट को या वेब पेज को रीलोड करोगे विद द चेंजेज तो वो जो लोडिंग टाइम होगा वो थोड़ा सा फास्टर हो जाएगा तो इट इज अ बेटर मोर एफिशिएंट वे ऑफ राइटिंग जावास्क्रिप्ट तो चाहे जावास्क्रिप्ट हो चाहे सीएसएस हो दोनों को हम अलग-अलग फाइल्स के अंदर उनको ऐड करते हैं और फिर इन फाइल्स को हम index.htm के अंदर जोड़ते हैं आल्सो इंटरेस्टिंग थिंग जरूरी नहीं है आपको एक ही सीएसएस फाइल लिंक करनी है आप चाहो तो 10 15 20 अलग-अलग सीएसएस फाइल्स बना सकते हो और सारी की सारी यहां पे लिंक कर सकते हो पर अभी जनरली हम उतनी बड़ी वेबसाइट नहीं बना रहे तो एक ही हमारे लिए काफी है एंड इसी तरीके से मल्टीपल जावास्क्रिप्ट फाइल्स को भी यहां पर लिंक किया जा सकता है अब नेक्स्ट चीज जिसके बारे में हम बात करने वाले हैं दैट इज गोइंग टू बी द विंडो ऑब्जेक्ट हमारी ब्राउजर के अंदर जब भी हम किसी टैब को खोलते हैं हमारे लिए बाय डिफॉल्ट एक ऑब्जेक्ट होती है दिस इज अवर जावास्क्रिप्ट लाइक ऑब्जेक्ट जो हमेशा प्रेजेंट रहती है तो द विंडो ऑब्जेक्ट रिप्रेजेंट्स एन ओपन विंडो इन अ ब्राउजर इफ आई गो टू माय ब्राउजर कंसोल के अंदर और यहां पे इफ आई राइट विंडो एंटर किया तो मेरे लिए इस तरीके की एक ऑब्जेक्ट दिखाई दे रही है इस ऑब्जेक्ट के अंदर अलर्ट नाम का एक फंक्शन है अटॉब नाम का एक फंक्शन है ब्लर नाम का एक फंक्शन है जहां भी एफ लिखा हुआ है दे आर ऑल फंक्शंस इसके अलावा हमारे पास ऑब्जेक्ट के अंदर और ऑब्जेक्ट्स हैं डिफरेंट डिफरेंट तो कई सारे फंक्शंस हैं हमारे पास अब स्क्रोल करोगे कई सारी प्रॉपर्टीज भी है फंक्शंस के साथ-साथ बहुत सारा डेटा इस विंडो ऑब्जेक्ट के अंदर स्टोर होता है इतना डेटा है कि शायद ही किसी को याद होगा ये तो एज सच हमें इसको याद नहीं रखना कि विंडो ऑब्जेक्ट के अंदर क्या प्रॉपर्टीज और क्या मेथड्स हैं पर हां हमारे लिए एक विंडो ऑब्जेक्ट होती है इट इज ब्राउजर्स ऑब्जेक्ट नॉट जावास्क्रिप्ट ये जावास्क्रिप्ट क्रिएट नहीं करता ये हमारे लिए मेरा ब्राउजर क्रिएट करके देता है अगर आप ऑटोमेटिक क्रिएट किया हमें उसे बताने की जरूरत नहीं पड़ी तो ये जो हमारी विंडो ऑब्जेक्ट होती है इट इज अ ग्लोबल ऑब्जेक्ट विद लॉट्स ऑफ प्रॉपर्टीज एंड मेथड्स सारा का सारा जो हमारा कोड होता है वो हमारी विंडो ऑब्जेक्ट के अंदर आता है जैसे अभी तक हमने अलर्ट को यूज किया या कसोल डलॉग को यूज किया एक इंटरेस्टिंग चीज मैं आपको दिखाती हूं यहां पे हम क्या कर सकते हैं style.css index.htm को हटा देते हैं लेट्स ट्राई टू प्रिंट द विंडो ऑब्जेक्ट मैंने किया कसोल डलॉग विंडो सेव रिफ्रेश तो ये मेरे पास मेरी विंडो ऑब्जेक्ट आ गई पूरी की पूरी अब यहां पर विंडो जक की जगह हम हेलो प्रिंट कर सकते हैं तो हमारे पास हेलो प्रिंट होके आ जाएगा बट इफ आई राइट समथिंग लाइक दिस विंडो डॉ console.log h2 मैंने क्या किया w console.log किया सेव कर लेते हैं रिफ्रेश करेंगे तो भी मेरा कोड वर्क कर रहा है तो ये जो console.log हम अभी तक यूज़ करते आए हैं ये हमारी विंडो ऑब्जेक्ट का ही पार्ट होता है बस हमारे कोड को पता है कि विंडो ऑब्जेक्ट क्या है हमारे स्क्रिप्ट . जए को पता है इवन दो हमने इसको कभी नहीं बताया हमने कुछ ऐसा नहीं लिखा कोड के अंदर लेट विंडो इज इक्वल टू दिस ऑब्जेक्ट और इसके अंदर हम की वैल्यू पेयर्स डिफाइन कर रहे हैं इस तरीके का हमने कोई स्टेटमेंट नहीं लिखा तब भी कोड को पता है विंडो ऑब्जेक्ट क्या है क्योंकि ये ग्लोबल ऑब्जेक्ट है इसके बारे में पूरे कोड को थ्रू आउट जावास्क्रिप्ट को पता होता है एंड इसी के अंदर के काफी सारे फंक्शंस मेथड्स एंड प्रॉपर्टीज हैं जिनको हम यूज़ करते हैं जैसे हमने अलर्ट किया था तो जो हमारा अलर्ट होता है इट इज एक्चुअली पार्ट ऑफ द विंडो ऑब्जेक्ट हम विंडो ड अलर्ट लिख के भी अपने अलर्ट को क्रिएट कर सकते हैं रिफ्रेश किया मेरा अलर्ट क्रिएट हो गया मेरे लिए तो ये क्या हुआ विंडो ऑब्जेक्ट ने काम किया प्रोमट भी विंडो ऑब्जेक्ट का पार्ट होता है इस तरीके से बहुत सारी इंटरेस्टिंग चीजें हैं जो विंडो ऑब्जेक्ट की पार्ट है अब ये जो विंडो ऑब्जेक्ट है इसे हम एज सच स्पेसिफाई करके नहीं लिखते हमारे कोड को ऑलरेडी पता है सारी चीजें जो विंडो ऑब्जेक्ट का पार्ट है वो ऑटोमेटिक हमारे लिए उस चीज को यूज कर लेता है पर हमसे इंटरव्यूज के अंदर पूछा जा सकता है कि हमारी विंडो ऑब्जेक्ट क्या है ये किस तरीके से अवेलेबल होती है कैसे जनरेट होती है कौन इसे जनरेट कराता है तो इसके बारे में हमें पता होना चाहिए अब नेक्स्ट चीज जिसके बारे में हम बात करेंगे फाइनली हमारा जो बड़ा टॉपिक है जिसके बारे में हम सोचते हैं कि हां ये चीज पढ़ेंगे जावास्क्रिप्ट के अंदर दैट इज डॉम हमारी पिक्चर का जो सुपर हीरो है वो अब डॉम का एग्जैक्ट मतलब क्या होता है फुल फॉर्म की बात करें तो इसकी फुल फॉर्म होती है डॉक्यूमेंट ऑब्जेक्ट मॉडल और ये काफी मतलब कंफ्यूज करने वाली फुल फॉर्म है एज अ बिगनर हमें कुछ समझ नहीं आएगा कि हम हां ठीक है डॉक्यूमेंट ऑब्जेक्ट मॉडल है पर है क्या बेसिकली हमारा जो एचटीएमएल जितना भी एचटीएमएल हम लिखते हैं अपने जावास्क्रिप्ट के साथ अटैच करके वो सारा का सारा एचटीएमएल कोड जावास्क्रिप्ट के अंदर हम एक्सेस कर सकते हैं मतलब उस सारे के सारे चाहे पैराग्राफ टैग हो गया चाहे h1 हेडिंग टैग हो गया चाहे कोई बटन हो गया सारी के सारे एलिमेंट्स को जावास्क्रिप्ट के अंदर एक्सेस किया जा सकता है और उसे कैसे एक्सेस किया जा सकता है ऑटोमेटिक हमारे जो एटीएमएल का पूरा कोड होता है वो या एटीएमएल के जो सारे एलिमेंट्स होते हैं वो जावास्क्रिप्ट के अंदर आके एक ऑब्जेक्ट के अंदर कन्वर्ट हो जाते हैं और उस स्पेशल ऑब्जेक्ट को हम नाम देते हैं डॉक्यूमेंट एक स्पेशल ऑब्जेक्ट बन जाती है जिसको नाम दे दिया जाता है डॉक्यूमेंट और ये डॉक्यूमेंट अवेलेबल होता है हमारी विंडो ऑब्जेक्ट के अंदर तो विंडो ऑब्जेक्ट है विंडो ऑब्जेक्ट तो ऑटोमेटिक होती है हमेशा हर पेज के ऊपर विंडो ऑब्जेक्ट के अंदर एक डॉक्यूमेंट नाम की ऑब्जेक्ट और आ जाती है उसी ऑब्जेक्ट ट के पार्ट में सब सब ऑब्जेक्ट आ जाती है और इस डॉक्यूमेंट ऑब्जेक्ट के अंदर पूरा का पूरा html.com श्रद्धा खाप डेस्कटॉप जावास्क्रिप्ट index.htm इफ आई मिनिमाइज इट यहां क्या आ रहा है index.htm फाइल का पूरा का पूरा लिंक हमारे पास आ रहा है हमारे पास ऑल के अंदर सारे के सारे टैग्स आ रहे हैं जितने भी टैग्स को हमने यूज़ किया है हमने h1 को यूज़ किया h4 को यूज़ किया पैराग्राफ को यूज़ किया बटन को यूज़ किया इन फैक्ट इस पे जाके आप हर करोगे तो वो हाईलाइट भी हो रहा है लेफ्ट साइड में आप पैराग्राफ के ऊपर हर करोगे मेरा पेज के ऊपर पैराग्राफ हाईलाइट होके आ रहा है ब्लू कलर में h4 के ऊपर हर करेंगे h4 हाईलाइट हो रहा है h1 के ऊपर हर करेंगे h1 हाईलाइट हो रही है बॉडी के ऊपर बॉडी हाईलाइट हो रही है लिंक टैग इस तरीके से सारे के सारे टैग्स मेरे पास अवेलेबल हैं हम और नीचे स्क्रॉल करेंगे तो काफी सारी और इंफॉर्मेशन हमारे पास आएंगी वी हैव समथिंग कॉल्ड चाइल्ड नोड्स जिसके अंदर हमारे पास नोड्स हैं काफी सारी इंफॉर्मेशन है तो जो पूरा का पूरा हमारा एचटीएमएल का कोड होता है दैट इज अवेलेबल इन द डॉक्यूमेंट ऑब्जेक्ट और ये डॉक्यूमेंट ऑब्जेक्ट कहां पे अवेलेबल होती है दिस इज अवेलेबल इन द विंडो ऑब्जेक्ट हम चाहे तो सिंपली विंडो ड डॉक्यूमेंट भी प्रिंट करा सकते हैं हमें पता है डॉक्यूमेंट विंडो का पार्ट है तो वि ड डॉक्यूमेंट प्रिंट कराएंगे तो अब देखेंगे पूरा का पूरा हमारे पास क्या आ रहा है पूरा का पूरा कोड प्रिंट होके आ रहा है ये हमारा सारा का सारा एटीएमएल का कोड है अब मुझे इस डॉक्यूमेंट ऑब्जेक्ट की अगर प्रॉपर्टीज देखनी है तो हम कर सकते हैं console.dir विड डॉक्यूमेंट तो हमारी जो डॉक्यूमेंट ऑब्जेक्ट है वो इस तरीके से हमें दिखाई देगी मतलब उसके मेथड्स और प्रॉपर्टीज दिखाई देंगे ये जो console.dir होता है दिस इज डिफरेंट फ्रॉम console.log काफी सारी नई चीजें हैं जो मैं सीखने को मिलेंगे इस चैप्टर के अंदर कसोल डलॉ का काम होता है कि ये चीजें सिर्फ प्रिंट करवा देता है स्क्रीन पे और कंसोल ल डॉट डीआई आर का काम होता है कि ये जो हमारी स्पेशल ऑब्जेक्ट्स होती है जैसे हमारी डॉक्यूमेंट ऑब्जेक्ट हो गई यह उसे उसकी प्रॉपर्टीज एंड मेथड्स को प्रिंट करवाने के काम आता है पर यह तो क्या करता है ऑब्जेक्ट को एस एन एलिमेंट प्रिंट करा देता है तो जो हमारा कसोल डलॉग होता है ये डॉम एलिमेंट्स को स्पेशली ट्रीट करता है जैसे डॉक्यूमेंट के अंदर हमारे डॉम एलिमेंट्स है पैराग्राफ h1 ये सब तो इन्हे हम डायरेक्टली प्रिंट करवाएंगे इन ऑब्जेक्ट्स को तो इस तरीके से हमारे लिए एटीएमएल प्रिंट होगी जैसे अगर मैं लिखूं कसोल डलॉग विंडो ड डॉक्यूमेंट ओके लेट्स मेक इट लॉग मेरे लिए क्या प्रिंट हुआ मेरे लिए मेरा html.erb हमारी विंडो ऑब्जेक्ट का पार्ट है तो काफी इंटरेस्टिंग चीजें तो हमने क्या सीखा हमने यह सीखा हमारा जो नाम से और ये डॉक्यूमेंट क्या होता है ये बेसिकली मॉडल होता है रिप्रेजेंटेशन होती है किसकी हमारे html5 निकलनी शुरू हो जाती हैं हमारे कोड के हिसाब से और ये जो हमारा ट्री लाइक स्ट्रक्चर होता है इसमें हर इंडिविजुअल बॉक्स को हम अपनी नोड कहते हैं ट्री के अंदर हर एक बॉक्स को नोड कहा जाता है तो हर एक नोड क्या है हर एक नोड हमारे लिए ऑब्जेक्ट है ये भी ऑब्जेक्ट है ये भी ऑब्जेक्ट है ये भी ऑब्जेक्ट है ये भी ऑब्जेक्ट है ये भी ऑब्जेक्ट है तो इसीलिए इसको डॉक्यूमेंट क्योंकि डॉक्यूमेंट नाम है ऑब्जेक्ट का ऑब्जेक्ट क्योंकि ऑब्जेक्ट्स हैं सारी की सारी मॉडल क्योंकि करके दे देता है ये जो डॉम है ये हमारा एक ट्री लाइक स्ट्रक्चर होता है जिसमें शुरुआत होती है हमारी विंडो के साथ ये जो विंडो ऑब्जेक्ट होती है इसी के अंदर सब कुछ होता है तो विंडो के अंदर ही हमारी डॉक्यूमेंट ऑब्जेक्ट आती है तो उसके अंदर डॉक्यूमेंट आता है डॉक्यूमेंट के अंदर हमारे पास html2text एए है इसमें ये वाला जो टैग है इसी के अंदर सब कुछ है तो इसकी नोड आ गई अब html4 हो जाते हैं एक हमारा हेड वाला पार्ट आ जाता है एक हमारा बॉडी वाला पार्ट आ जाता है अब हेड पार्ट के अंदर भी हमारे पास कुछ मेटा टैग्स हो सकते हैं तो ये एक पहला मेटा टैग आ गया दूसरा मेटा टैग आ गया हमारे पास एक टाइटल हो सकता है ये हमारे टाइटल की नोड आ गई ये हमारा लिंक हो सकता है हमारे पास लिंक की नोड आ गई उसके बाद बॉडी टैग के अंदर हमारे पास h1 हो सकता है लद यहां पे इन्होंने क्या किया है डिव का एग्जांपल लिया है तो यहां पर बेसिकली आई कैन क्रिएट अनदर टैग कॉल्ड डिव डिव के अंदर ए बी सीडी इस तरीके से रिफ्रेश किया तो ए बी सीडी प्रिंट हो के आ गया तो ये जो डिव था बॉडी के अंदर हमारा डिव आ सकता है डिव के अंदर अगर मैंने कोई इमेज ऐड की है h1 ऐड किया पैराग्राफ ऐड ऐड किया और कड डिव ऐड किया है तो इस तरीके से वो भी आ सकते हैं और फिर क्योंकि हमने स्क्रिप्ट टैग भी ऐड किया है तो ये स्क्रिप्ट टैग भी आ जाएगा बॉडी टैग के पार्ट जो है तो ये सारी की सारी नोड्स हैं जो हायरा कियल हायरा कियल यानी ऊपर से लेके नीचे तक मतलब विंडो ऑब्जेक्ट के अंदर डॉक्यूमेंट ऑब्जेक्ट होगी डॉक्यूमेंट के अंदर एटीएमएल होगा कैसे पता चले डॉक्यूमेंट के अंदर हमारी विंडो ऑब्जेक्ट आ गई अब इस विंडो ऑब्जेक्ट के अंदर हम चाहे तो लिख सकते हैं विंडो डॉट डॉक्यूमेंट रिफ्रेश किया तो यह हमारा पूरा का पूरा हमारे पास डॉक्यूमेंट आ गया जिसके अंदर सारी इंफॉर्मेशन है चाहे तो सिंपली डायरेक्टली हम डॉक्यूमेंट को भी लिख सकते हैं क्योंकि विंडो ऑब्जेक्ट तो ग्लोबल है उसके बारे में सबको पता है रिफ्रेश किया तो भी हमारे पास वही सेम चीज प्रिंट होके आएगी अब इस डॉक्यूमेंट के अंदर अगर मुझे बॉडी को एक्सेस करना है तो मैं लिख सकती हूं डॉक्यूमेंट ड बॉडी सेव करेंगे रिफ्रेश करेंगे तो इस बार हमारे पास क्या प्रिंट हो गया है इस बार हमारे पास हमारी बॉडी वाली जो ऑब्जेक्ट है वो प्रिंट होके आई हम चाहें तो एक लाइन में ईआर कर सकते हैं और एक लाइन में console.log डॉक्यूमेंट बडी लिख सकते हैं सेव किया रिफ्रेश किया तो ये तो पूरी ऑब्जेक्ट आ गई और इसी ऑब्जेक्ट का हमारे पास एटीएमएल वर्जन आ गया यानी बॉडी के जो सारे के सारे टैग्स थे वो हमारे पास प्रिंट होके आ गए अब इस बॉडी ऑब्जेक्ट के अंदर बहुत सारी डिफरेंट डिफरेंट चीजें होती हैं जैसे इट हैज समथिंग कॉल्ड चाइल्ड नट्स चाइल्ड नट्स के अंदर क्या होता है चाइल्ड नोड बेसिकली होता है कि एक नोड के अंदर नीचे की तरफ कितनी नोड्स हैं तो बॉडी के अंदर ही क्या-क्या है इसी के अंदर हमारी टेक्स्ट नोड आ जाती है इसी के अर डिव आ गया जो हाईलाइट हो रहा है h1 आ गया h4 आ गया पैराग्राफ आ गया बटन आ गया स्क्रिप्ट आ गया और इन्हीं से रिलेटेड इनके टेक्स्ट नोट्स आ गई तो डिफरेंट डिफरेंट नोट्स हैं अभी इतना डिटेल में नहीं जाना बस थोड़ा सा ओवरव्यू थोड़ा सा महसूस करना है कि हम क्या सीखने की कोशिश कर रहे हैं तो डॉम के अंदर बेसिकली ये जावास्क्रिप्ट का कोड है जिसको मैंने प्रिंट करवाया जावास्क्रिप्ट की ऑब्जेक्ट्स हैं इसका html5 का पूरा चाइल्ड नट्स आ गए उसके अलावा भी बहुत सारी इंफॉर्मेशन है ये पूरा का पूरा टेक्स्ट आपको दिखाई दे रहा होगा देयर इज अ लॉट ऑफ इंफॉर्मेशन इन देयर एंड जिस तरीके से हमने अपने बॉडी को प्रिंट करवाया है वैसे ही हम डॉक्यूमेंट से अपने हेड को प्रिंट करवा सकते हैं रिफ्रेश किया तो ये हमारे पास हमारा हेड आ गया कंप्लीट अब डॉम से अभी तक जो लर्निंग्स है उनको मैं थोड़ा सा समरा इज कर देती हूं डॉम मुझे पता चल गया जैसे इफ आई वांट आई कैन प्रिंट कंसोल डॉक्यूमेंट के अंदर मैंने बॉडी को प्रिंट करवाया console.dir ये मेरी बॉडी आ गई बॉडी के अंदर मैं चाहूं तो आई कैन डू समथिंग कॉल्ड चाइल्ड नट्स और चाइल्ड नट्स में मैं अपनी फर्स्ट नोड को प्रिंट करवा रही हूं सेव किया रिफ्रेश किया फर्स्ट नोड क्या है फर्स्ट नोड मेरा डिव है ये है मेरी फर्स्ट नोड दिस इज अ डिव ये कैसे प्रिंट किया ये चाइल्ड नोड क्या है उसके डिटेल में नहीं जाना एग्जांपल दिखा रही हूं ठीक है मेरे पास ये पूरा का पूरा डेव आ गया इस तरीके से इंफॉर्मेशन देख ली मैंने मेरे किस काम की है ये सारी इंफॉर्मेशन जो मुझे जावास्क्रिप्ट के अंदर मिल रही है बेसिकली ये इंफॉर्मेशन हमारे तब काम आती है जब मुझे अपने एटीएमएल के अंदर चेंजेज करने होते हैं फॉर एग्जांपल हमने वेबसाइट्स पे देखा होगा डार्क मोड होता है लाइट मोड होता है अब मुझे चाहिए कि मेरे बटन को क्लिक करने से मेरी वेबसाइट का पूरा बैकग्राउंड कलर चेंज हो जाए तो उसे कैसे चेंज करें हम जाके कोई यूजर बटन क्लिक करेगा जाके अपने जो फाइल्स हम अपलोड करते हैं सर्वर के ऊपर उनके अंदर तो चेंज नहीं कर सकते क्योंकि एक बार आपने फाइल के अंदर कोड लिख दिया वो तो वैसे का वैसा सेट हो जाएगा उसे चेंज नहीं कर सकते पर रन टाइम पे मतलब डायनेमिक जब यूजर एक्सेस कर रहा है वेबसाइट पे उस टाइम पे जो चेंजेज होने हैं वो सारे के सारे चेंजेज हमारे लिए जावास्क्रिप्ट कर सकता है एटीएमएल सीएसएस नहीं कर सकते तो जावास्क्रिप्ट के अंदर हम डायनेमिक चेंजेज करते हैं पेज के ऊपर जैसे ये पेज मान लो लोड हो गया अब इसकी फाइल के अंदर कोई चेंज नहीं किया जा सकता पर फिर भी मुझे बैकग्राउंड कलर चेंज करना है सो व्हाट आई कैन डू इज आई कैन राइट समथिंग लाइक दिस डॉक्यूमेंट के अंदर जो डॉक्यूमेंट डॉट बॉडी है उसके लिए मुझे उसका स्टाइल चेंज करना है और स्टाइल के अंदर मुझे उसका बैकग्राउंड चेंज करना है बैकग्राउंड एंड इस इस बैकग्राउंड को आई वांट टू कन्वर्ट इट टू ग्रीन मुझे इसके बैकग्राउंड को ग्रीन बनाना है एंटर किया तो मेरे लिए क्या हो गया मेरा बैकग्राउंड ग्रीन बन गया ये जो चेंज है ये जो लाइन है ये मैंने एचटीएमएल के अंदर नहीं लिखी और जैसे ही आप रिफ्रेश करोगे वो चेंज गायब हो जाएगा पर क्योंकि मैं ये लाइन लिख पाई तो मैंने क्या किया डायनेमिक अपने पेज के अंदर कुछ चेंज कर दिया अभी तो मैंने बस स्टाइल चेंज किया है मैं चाहूं तो ये हेडिंग भी चेंज कर सकती हूं आई कैन राइट समथिंग लाइक दिस या इनफैक्ट मैं आपको यहीं पर लिख के दिखाती हूं इसी के अंदर ये जो हेडिंग है हेडिंग के अंदर नंबर थ्री को एक्सेस करते हैं और इसके अंदर आई विल राइट समथिंग यहां इसे कट कर लेते हैं पेस्ट इनर टेक्स्ट इज इक्वल टू ए बी सीडी सेव रिफ्रेश तो ये क्या हुआ मेरी हेडिंग चेंज हो गई ए बी सीडी हो गई हेडिंग इसी कोड को यहां से हटा लेते हैं सेव रिफ्रेश तो ये क्या है नॉर्मल हेडिंग है मेरे पास और मैं चाहूं तो यहां से अपनी हेडिंग को चेंज कर सकती हूं आई कैन मेक इट ए बी सीडी तो अपने पेज के ऊपर जो स्टाइल से रिलेटेड कंटेंट से रिलेटेड जितने भी चेंजेज हमें डायनेमिक करने होते हैं जिसके लिए हम html4 को सबमिट कर रहा है उसके बेसिस पर जिन चेंजेज को हम लाकर आना चाहते हैं उन चेंजेज को हम कहते हैं अपने डायनेमिक चेंजेज और ये डायनेमिक चेंजेज करने के लिए ही डायनेमिक चेंजेज कह लो इसको डायनेमिक मैनिपुलेशन कह लो मैनिपुलेशन मतलब कुछ चेंज लेके आना तो इन्हीं को करने के लिए हम अपने डोम को यूज़ करते हैं तो इसीलिए डॉम का सबसे बड़ा फायदा होता है डायनेमिक चेंजेज करना इन आवर वेब पेज तो नेक्स्ट टॉपिक जिसके साथ हम स्टार्ट करेंगे दैट इज कॉल्ड डोम मैनिपुलेशन मैनिपुलेशन यानी हम डोम के अंदर चेंजेज करना कैसे शुरू कर सकते हैं अब डोम के अंदर चेंजेज करने से पहले हमें ये पता होना चाहिए कि हम किसके अंदर चेंज करना चाहते हैं क्या मैं इस हेडिंग के अंदर चेंज करना चाहती हूं रिफ्रेश कर लेते हैं इसे डू आई वांट टू मेक अ चेंज टू दिस हेडिंग या मुझे इस पैराग्राफ के अंदर चेंज करना है या मुझे इस बटन के अंदर चेंज करना है मुझे चेंज एगजैक्टली करना कहां पे है तो उसके लिए मुझे एलिमेंट्स को एक्सेस करना स्टार्ट करना पड़ेगा एक्सेस करना यानी किस तरीके से हम अपने एलिमेंट्स को सेलेक्ट कर सकते हैं अच्छा एक और इंटरेस्टिंग चीज मैं आपको दिखाती हूं कि index.htm में अभी तो हमने अपनी स्क्रिप्ट को यहां पे इंक्लूड किया है फॉर एग्जांपल मैंने अपनी स्क्रिप्ट को हेड के अंदर इंक्लूड कर लिया होता है अपने स्क्रिप्ट टैग को जब हम यहां लिख देंगे तो बेसिकली हम कह रहे हैं हमारी बॉडी से पहले हमारी स्क्रिप्ट लोड होनी चाहिए हमारे जावास्क्रिप्ट का कोड लोड होना चाहिए तो जावास्क्रिप्ट के कोड के अंदर अगर अब हम प्रिंट करवाएं डॉक्यूमेंट ड बॉडी को सेव किया रिफ्रेश किया तो इस बार क्या प्रिंट होगा इस बार नल प्रिंट होगा इसे ज़ूम इन कर लेते हैं नल के बारे में पहले भी बात की थी नल क्या है एक स्पेशल टाइप होता है प्रिमिटिव टाइप होता है जावास्क्रिप्ट के अंदर और नल का मतलब होता है खाली ऑब्जेक्ट डॉक्यूमेंट डॉ बॉडी हमें पता है एक ऑब्जेक्ट होनी चाहिए थी पर अभी क्या है अभी वो खाली है तो उसकी वैल्यू क्या है नल प्रिंट होके आ रही है तो जब हम अपनी स्क्रिप्ट को बॉडी से पहले लोड कर लेते हैं तो उसके अंदर डॉम एलिमेंट्स एक्सेसिबल नहीं होते कोड के अंदर तो इसीलिए अपना जो स्क्रिप्ट टैग है इसको हमको लिखना पड़ता है लास्ट में सेव किया रिफ्रेश किया तो इस बार हमारी बॉडी के अंदर काफी सारी इंफॉर्मेशन हमारे लिए प्रिंट हो रही है सो दैट इज़ द मेजर रीज़न व्हाई वी राइट अ स्क्रिप्ट टैग जस्ट बिफोर एंडिंग द बॉडी टैग तो अपने दोबारा से स्क्रिप्ट . जए के अंदर आ जाते हैं अब शुरुआत करते हैं स्टार्टिंग विद एक्सेसिंग आवर एलिमेंट सबसे पहला तरीका होता है एलिमेंट्स को एक्सेस करने का सिलेक्ट करने का यूजिंग देयर आईडी जो हमारे index.htm के अंदर एलिमेंट्स होते हैं इन सबको हम एक आईडी दे सकते हैं आईडी बेसिकली होता है कि जैसे हमें रोल नंबर मिल जाता है स्कूल के अंदर कॉलेज के अंदर हमारे पास एक यूनिक रोल नंबर होता है और हर स्टूडेंट का रोल नंबर अलग होता है आपका रोल नंबर अलग होगा मेरा रोल नंबर अलग होगा उसी तरीके से हर एक एलिमेंट को हम एक इंडिविजुअल आईडी दे सकते हैं फॉर एग्जांपल ये जो मेरी h1 हेडिंग है इसको मैंने दे दी आईडी इज इक्वल टू हेडिंग इस तरीके से मैंने इसे कोई आईडी दे दी हेडिंग इसे बोल सकते हैं तो अब मुझे अगर इस एलिमेंट को एक्सेस करना है यूजिंग इट्स आईडी तो इसको एक्सेस करने का क्या तरीका होगा मैं लिखूंगी डॉक्यूमेंट डॉक्यूमेंट ऑब्जेक्ट के अंदर का एक मेथड हम यूज़ करेंगे गेट एलिमेंट बाय आईडी और फिर अपनी आईडी का हम नाम लिख देंगे तो हम लिख सकते हैं डॉक्यूमेंट ड गट एलिमेंट बाय आईडी और उसके बाद डबल कोड्स के अंदर हमें लिखना है अपनी आईडी का नाम मेरी आईडी का नाम है हेडर सेव कर लिया रिफ्रेश किया एज सच कोई चेंज नहीं आएगा इसे क्या करना पड़ेगा ये वैल्यू रिटर्न करता है ये हमें हमारी हेडर वाली आईडी की h1 की वैल्यू रिटर्न करेगा उसे हम किसी वेरिएबल के अंदर स्टोर कर सकते हैं इसको कह देते हैं हेडिंग इज इक्वल टू ओके दिस वाज सपोज्ड टू बी हेडिंग नॉट हेडर एंड फिर इस हेडिंग को हम प्रिंट करवा सकते हैं कसोल डलॉग हमारी हेडिंग सेव कर लिया रिफ्रेश कर लिया तो ये हमारी हेडिंग हमारे लिए प्रिंट होकर आ गई हमें इसे हमेशा करना है र बिकॉज़ दिस इज एन ऑब्जेक्ट तो ये हमारी h1 टाइप की हेडिंग आ गई आईडी जनरली हमें कैसे दिखते हैं आईडी को दिखाने के लिए कोड के अंदर हैश यूज किया जाता है हैश और फिर हम अपनी आईडी का नाम लिखते हैं जैसे अगर मुझे अपनी आईडी के हिसाब से अगर स्टाइल देना होगा जैसे स्टाइल स के अंदर अगर मुझे h1 को स्टाइल नहीं देना इसकी आईडी के बेसिस पे स्टाइल देना है तो मैं लिखूंगी हैश हेडिंग तो ये हैश हमेशा आईडी का सिंबल होता है सेव किया रिफ्रेश किया तो भी मेरी स्टाइलिंग अप्लाई करेगी तो वही यहां पे लिखा हुआ आ रहा है कि h1 तो हेडिंग है टैग का नाम है h1 और हैश हेडिंग यानी उसकी आईडी है हेडिंग और उससे रिलेटेड बहुत सारी इंफॉर्मेशन हमारे पास यहां पर प्रिंट होकर आ जाएगी तो हेडिंग के अंदर क्या-क्या कंटेंट है वो भी हमें यहां पे दिखाई दे रहा है कई सारी चीजें दिखाई दे रही है जिसको अभी धीरे-धीरे हम समझेंगे अभी के लिए हमने देख लिया हेडिंग से एलिमेंट को कैसे एक्सेस करना है दूसरा तरीका होता है एलिमेंट को एक्सेस करने का यूजिंग क्लास नेम अब हेडिंग तो होती है हर आइटम की यूनिक हर जो इंडिविजुअल एलिमेंट होता है उसे हम यूनिक हेडिंग देते हैं जैसे अपने कोड के अंदर index.htm के अंदर ये मेरी h1 हेडिंग हो गई हम एक और h1 हेडिंग बना सकते हैं इसको हम कह सकते हैं आईडी हेडिंग टू एंड यहां लिख देते हैं जावास्क्रिप्ट इस तरीके से सेव किया रिफ्रेश किया तो ये फर्स्ट हेडिंग आ गई ये सेकंड हेडिंग आ गई इसके ऊपर स्टाइल क्यों नहीं आ रहा स्टाइल इसलिए नहीं आ रहा इसके ऊपर क्योंकि style.css में सिर्फ इस आईडी को हमने स्टाइलिंग दीी है और ये आईडी किसके पास है सिर्फ h1 के पास है h2 के पास दूसरी आईडी है तो इवन दो ये दोनों h1 ही टैग्स हैं h1 ही एलिमेंट्स हैं पर इन दोनों की आईडी अलग-अलग है तो हम वैसे तो सेम आईडी दे सकते हैं पर कभी देना नहीं है क्योंकि आईडी का रोल होता है टू बी यूनिक फॉर ईच एलिमेंट पर अगर हमारे पास कोड में इस तरीके की कुछ कंडीशन आ जाती है फॉर एग्जांपल मेरा जो बटन है उसका भी टेक्स्ट का कलर वाइट होना चाहिए मेरा जो पैराग्राफ है इसके भी टेक्स्ट का कलर वाइट होना चाहिए तो बेसिकली मल्टीपल एलिमेंट्स को सेम अगर हम एक कैटेगरी के अंदर डालना चाहते हैं तो उसके लिए हम यूज़ करते हैं क्लास क्लास बहुत सारे एलिमेंट के लिए सेम हो सकती है और क्लास को हम डॉट से रिप्रेजेंट करते हैं और फिर अपनी क्लास का नाम कुछ भी हम दे सकते हैं एलिमेंट को तो जैसे यहां पर दोनों जो हेडिंग है h1 ए2 h4 तीनों हेडिंग्स को ये जो आईडी है इसे हम कन्वर्ट कर देते हैं टू सम क्लास एंड यहां भी इसे सेम क्लास दे देते हैं हेडिंग इसको भी क्लास दे दी हेडिंग इसको भी क्लास दे दी हेडिंग इसको भी क्लास दे दी हेडिंग सेव किया एंड अब स्टाइल ड सीएसएस के अंदर जाके हम अपनी डॉट हेडिंग के हिसाब से स्टाइलिंग दे सकते हैं तो ये क्लास रिप्रेजेंट करता है रिफ्रेश किया तो क्या हो गया तीनों को सेम स्टाइलिंग मिल गई क्योंकि तीनों की क्लास सेम है ये जो क्लास एंड आईडी होती है हमें इंस्पेक्ट करके भी दिखाई दे सकती है आप जाके क्लिक करोगे h1 के ऊपर तो बेसिकली यहां पे दिख जाता है हमारे एलिमेंट्स के अंदर जाके h1 के अंदर मुझे क्लास दिख रही है हेडिंग इस h1 को भी सेम क्लास है इस h4 को भी सेम क्लास दी हुई है अब क्लास के बेसिस पर एलिमेंट्स को एक्सेस करने के लिए हम लिखते हैं डॉक्यूमेंट ड गेट एलिमेंट्स बाय क्लास नेम और फिर अपनी क्लास का नाम तो यहां हम लिख सकते हैं style.css को क्रॉस कर देते हैं script.js में वी कैन राइट लेट बहुत सारी हेडिंग्स इनको हम कह सकते हैं इज इक्वल टू डॉक्यूमेंट डॉट गेट एलिमेंट्स इस बार क्या हो जाएगा एलिमेंट्स हो जाएगा यहां पे सिंगल है एलिमेंट क्यों सिंगल है क्योंकि आईडी एक ही एलिमेंट की यूनिक होती है पर यहां हो जाएगा एलिमेंट्स क्योंकि क्लास नेम तो बहुत लोगों का कॉमन हो सकता है और यहां हम लिख देंगे अपनी क्लास का नाम मेरी क्लास का नाम क्या था अब हेडिंग था मेरी क्लास का नाम इसे सेव कर लेते हैं या इनफैक्ट इसे और थोड़ा सा यूनिक बनाने के लिए हम इसे कह देते हैं हेडिंग क्लास मेरी क्लास का नाम क्या था इट वाज हेडिंग क्लास सेव कर लिया यहां हमने लिख दिया हेडिंग क्लास सेव रिफ्रेश ओके इसे इस हेडिंग्स को हमें स्टोर भी करना पड़ेगा कसोल डलॉग याडी आर हेडिंग्स एंड साथ में लॉग भी करवा लेते हैं कसोल डलॉग हेडिंग्स सेव ऊपर वाले कोड को कर सकते हैं कॉमेंट आउट रिफ्रेश तो यह हमारे पास क्या आ गया एक एचटीएमएल कलेक्शन आ गया एचटीएमएल कलेक्शन के अंदर क्या-क्या है एक तो हमारे पास हमारी फर्स्ट हेडिंग है सेकंड हेडिंग है और ये थर्ड हेडिंग है ऑफ टाइप h4 और इस है ये हमारे लिए एक html5 पॉप जैसे मेथड्स नहीं होते पर हां अगर हम एटीएमएल कलेक्शंस की बात करें तो इट इज वेरी सिमिलर टू इन एरे बस वो एगजैक्टली एरे नहीं होता इट इज अ डिफरेंट थिंग कॉल्ड एटीएमएल कलेक्शन ये डिफरेंट टाइप का स्ट्रक्चर है जिसके अंदर हमारा डाटा स्टोर्ड है एक और चीज हम नोटिस करेंगे कि अगर लेट्स सपोज मैंने यहां पे लिख दिया होता है हेडिंग अब हेडिंग नाम की तो कोई क्लास है ही नहीं हमारे पास कौन सी क्लास है हमारी क्लास का नाम है हेडिंग क्लास माय क्लास नेम इज हेडिंग क्लास तो मैंने यहां गलत लिख दिया हेडिंग तो अगर हम रिफ्रेश करेंगे तो हमारे पास क्या प्रिंट होगा हमारा जो एचटीएमएल कलेक्शन होगा वो खाली आएगा क्योंकि कुछ एलिमेंट ही नहीं होगा उसके अंदर लेंथ क्या आएगी लेंथ उसकी आएगी इक्वल टू जीरो और यहीं पर अगर हम ऐसी आईडी को सर्च करते जो है ही नहीं जैसे यहां हम आईडी को सर्च कर रहे हैं हेडिंग और हेडिंग नाम की कोई आईडी तो है ही नहीं हमारे कोड के अंदर इसको सेव करेंगे रिफ्रेश करेंगे तो हमारे पास क्या प्रिंट होके आएगा नल प्रिंट होके आएगा तो जब किसी आईडी वाला एलिमेंट एजिस्ट नहीं करता तो नल प्रिंट होके आता है जब किसी क्लास वाला एलिमेंट एजिस्ट नहीं करता तो हमारे पास एमटी एटीएमएल कलेक्शन आता है इसको थोड़ा सा और आइडेंटिफिकेशन किया हमारे पास एटीएमएल कलेक्शंस आ गए और यहां चाहे तो बटन को एक्सेस कर सकते हैं लेट बटन इज इक्वल टू और यह हमने माय आईडी लिख द हम बटन को प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया यह हमारा बटन हमारे पास आ गया इसकी आईडी दिख रही है यह हमारा एचटीएमएल कलेक्शन हमारे पास आ गया अब तीसरा तरीका होता है एलिमेंट्स को एक्सेस करने का दैट इज यूजिंग द टैग नेम कि हम सारे के सारे पैराग्राफ टैग्स को एक्सेस करना चाहते हैं सारे के सारे h1 को एक्सेस करना चाहते हैं इस तरीके से तो इक्सड एटीए के अंदर दो पैराग्राफ बना लेते हैं दिस इज यह जो होगा यह हमारा सेकंड पैराग्राफ हो जाएगा सेव रिफ्रेश तो ये हमारा फर्स्ट पैराग्राफ है यह हमारा सेकंड पैराग्राफ है इसे प्रिंट करवाने के लिए हम लिख सकते हैं लेट पैरा कुछ भी नाम दे सकते हैं वेरिएबल को इज इक्वल टू डॉक्यूमेंट डॉ गेट एलिमेंट्स बाय टैग नेम और इसके अंदर हम अपने टैग का नाम डाल देंगे मुझे पैराग्राफ्स चाहिए सारे के सारे तो हम कसोल डीआर करा सकते हैं अपने पैराग्राफ्स को सेव किया रिफ्रेश किया ये हमारे पास दोबारा से एटीएमएल कलेक्शन आ गया जिसके अंदर फर्स्ट पैराग्राफ है फर्स्ट पैराग्राफ का हमें टेक्स्ट देखना है तो यहां जाके हम देख सकते हैं लर्न अबाउट डॉ कॉन्सेप्ट्स सेकंड पैराग्राफ का हमें टेक्स्ट देखना है यानी इस वाले का तो इनर टेक्स्ट नाम की प्रॉपर्टी होती है इन सबके पास यहां हम जा सकते हैं टू इनर टेक्स्ट यहां लिखा रहा है सेकंड पैराग्राफ तो इस तरीके से तीनों तीन अलग-अलग तरीके होते हैं हमारे पास टू एक्सेस आवर एलिमेंट्स फ्रॉम द पेज अब वैसे तो इन तीनों तरीकों को यूज किया जा सकता है पर इससे भी लेवल अप एक और बेटर तरीका होता है टू एक्सेस आवर एलिमेंट्स व्हिच इज कॉल्ड द क्वेरी सिलेक्टर डॉक्यूमेंट के अंदर हमारे पास एक मेथड होता है कॉल्ड क्वेरी सिलेक्टर क्वेरी सिलेक्टर के अंदर हम अपनी आईडी भी पास कर सकते हैं हम अपनी क्लास भी पास कर सकते हैं हम अपने टैग का नाम भी पास कर सकते हैं और वो खुद डिटेक्ट कर लेगा कि हमें किस तरीके के एलिमेंट्स चाहिए जैसे फॉर एग्जांपल मुझे सारे पैराग्राफ्स चाहिए तो मैं यहां लिख सकती हूं लेट अभी के लिए इसको एलिमेंट्स कह लेते हैं इज इक्वल टू डॉक्यूमेंट ड क्वेरी सिलेक्टर और हम हमेशा क्या करेंगे क्वेरी सिलेक्टर को यूज़ करेंगे मुझे अगर कोई टैग चाहिए किसी टैग के बेसिस पे एलिमेंट्स चाहिए जैसे मुझे सारे के सारे पैराग्राफ्स टैग चाहिए तो मैं यहां पर लिख सकती हूं अपने डबल कोड्स डबल कोट्स के अंदर अपने टैग का नाम और फिर क्या कर सकते हैं कंसोल डडी कर सकते हैं एलिमेंट्स को सेव कर लेंगे रिफ्रेश किया यह हमारे पास हमारा पैराग्राफ आ गया तो जब भी हम डॉक्यूमेंट डॉट क्वेरी सिलेक्टर करते हैं तो वो इस टैग से मैचिंग जो भी अंदर लिखा होगा चाहे आईडी है चाहे क्लास है चाहे टैग है उससे मैचिंग फर्स्ट एलिमेंट हमें रिटर्न करके दे देगा और अगर हमें सारे एलिमेंट चाहिए तो उसके लिए हम क्या करते हैं इसे कह देते हैं फर्स्ट एलिमेंट दिस इज माय फर्स्ट एलिमेंट और सारे के सारे चाहिए तो उसके लिए हम लिखते हैं क्वेरी सिलेक्टर ऑल और इसको कह देंगे ऑल एलिमेंट्स तो जब हमें फर्स्ट एलिमेंट चाहिए सिलेक्टर यूज़ करेंगे जब ऑल एलिमेंट्स चाहिए सारे मैचिंग एलिमेंट्स चाहिए तब हम क्वेरी सिलेक्टर ऑल यूज़ करेंगे तो इसे सेव कर लेते हैं रिफ्रेश कर लेंगे पहले वाले में तो फर्स्ट आया सिर्फ पैराग्राफ दूसरे वाले में क्या आया नोड लिस्ट आई तो हमारे पास क्वेरी सिलेक्टर क्या रिटर्न करता है क्वेरी सिलेक्टर हमारे लिए नोड लिस्ट रिटर्न करता है यानी नोड्स की लिस्ट नोड क्या होता है ऑलरेडी हमने बात कर रखी है क्या होता है हमारे लिए नोड हमारे जो डॉम का ट्री बनता है इसके अंदर हर एक इंडिविजुअल चीज हमारे लिए नोड बन जाती है तो इस नोड के अंदर अगर हम लिस्ट बना ले मल्टीपल नोड्स की तो वो एक नोड लिस्ट कहलाए गी तो ये हमारा फर्स्ट पैराग्राफ आ जाएगा ओके ये हमारा सेकंड पैराग्राफ आ जाएगा तो हम चाहे तो एक को भी एक्सेस कर सकते हैं मल्टीपल को भी एक्सेस कर सकते हैं क्लास के बेसिस पे कैसे एक्सेस करेंगे फॉर एग्जांपल मैंने अपनी माय क्लास क्लास का नाम दिया यहां पर माय क्लास लिख देते हैं और यहां भी माय क्लास लिखते हैं अब क्लास का नाम जब भी हम लिखते हैं उसे हम हमेशा एक डॉट के साथ लिखते हैं क्वेरी सिलेक्टर के अंदर डॉट के साथ लिखना पड़ता है सेव किया रिफ्रेश किया फर्स्ट क्लास कौन सी मिली ये इस h1 की मिली कौन से वाले h1 की मिली इनर टेक्स्ट के अंदर जाएंगे तो डॉम डेमो बाय अपना कॉलेज ये वाला जो हमारा h1 है इसकी है फर्स्ट क्लास और सारे के सारे नोट्स को अगर देखें दिस वाज माय फर्स्ट नोट दिस वाज माय सेकंड नोट दिस वाज माय थर्ड नोट उसी तरीके से आईडी के बेसिस पे सर्च कर सकते हैं आईडी में क्वेरी सिलेक्टर ऑल सेंस नहीं बनाता आईडी के बेसिस पे सिंगल एलिमेंट आएगा तो मैं अपना बटन सर्च कर सकती हूं यूजिंग माय आईडी सेव किया रिफ्रेश किया ओके हमारे पास नल प्रिंट होकर आ रहा है क्यों क्योंकि आईडी के सामने हमें डॉट नहीं लगाना आईडी के सामने हमें हैश लगाना है सेव किया रिफ्रेश किया हमारे पास हमारा बटन आ गया बटन से रिलेटेड बाकी सारी इंफॉर्मेशन आ गई तो इस तरीके से हम अपने एलिमेंट्स को एक्सेस कर सकते हैं अब ये तो हो गया एलिमेंट्स को एक्सेस करना उसके बाद एक्सेस करने के बाद हम अपने एलिमेंट्स की कुछ-कुछ प्रॉपर्टीज हैं जिनकी वैल्यू भी चेक कर सकते हैं और जिनकी वैल्यू हम चेंज भी कर सकते हैं तो इन प्रॉपर्टीज के बेसिस पर हम वैल्यू को गेट भी कर सकते हैं वैल्यू को गेट करना यानी उसको चेक करना और हम वैल्यू को सेट भी कर सकते हैं मतलब उसे चेंज भी कर सकते हैं उसे अपडेट भी कर सकते हैं तो ये सारी इंपॉर्टेंट प्रॉपर्टीज हैं जिनको हम कवर कर रहे हैं सबसे पहली प्रॉपर्टी जिसको हम याद रख सकते हैं दैट इज द टैग नेम टैग नेम हमें किसी भी एलिमेंट नोड का टैग रिटर्न कर देती है जैसे मुझे चाहिए कि मेरे पास यह एलिमेंट है फर्स्ट एलिमेंट जिसे मैंने प्रिंट करवा रखा है आई नो दिस इज माय बटन अब मैं क्या कर सकती हूं यहां पर अपने फर्स्ट एलिमेंट को दोबारा प्रिंट करवा सकते हैं मेरा फर्स्ट एलिमेंट क्या है मेरे लिए एक बटन है अब फर्स्ट एलिमेंट डॉट टैग नेम जैसे ही मैंने किया तो इसका टैग का नाम आ जाएगा टैग क्या है इसका बटन टैग है एचटीएमएल के अंदर बटन कैसे बनता है बटन टैग से तो वो मेरे पास आ जाएगा उसी तरीके से इफ आई सर्च फॉर लेट्स सपोज आई सर्च फॉर पैराग्राफ मैंने क्या किया अपने पैराग्राफ के बेसिस पर सर्च किया रिफ्रेश किया मेरे पास मेरा पैराग्राफ आ गया तो फर्स्ट फ एलिमेंट जो है इसके अंदर अभी पैराग्राफ है जैसे ही मैंने फर्स्ट एलिमेंट डॉट टैग नेम किया मेरे पास क्या आ जाएगा पैराग्राफ प्रिंट होकर आ जाएगा तो किसी भी एलिमेंट का टैग नेम प्रिंट करवाने के लिए हम डॉट टैग नेम कर सकते हैं सेकंड प्रॉपर्टी होती है हमारे पास इनर टेक्स्ट इनर टेक्स्ट क्या रिटर्न करती है इट रिटर्न्स द टेक्स्ट कंटेंट ऑफ ऑल एलिमेंट्स एंड ऑल इट्स चिल्ड्रन अब पहले तो ये चिल्ड्रन टर्म कहां से आ गई यहां पे चिल्ड्रन का मतलब तो बच्चे होता है हम चिल्ड्रन के बारे में कैसे समझ रहे हैं उसको एक बार थोड़ा सा समझ लेते हैं जब भी हम अपने डॉम स्ट्रक्चर की बात करते हैं फॉर एग्जांपल मैंने छो सा हिस्सा लिया डॉम स्ट्रक्चर का हमने कोड के अंदर हो सकता है बॉडी टैग के अंदर इस तरीके से अपना कोड लिखा हो दिस वाज माय बॉडी टैग बॉडी टैग के अंदर मैंने एक डिव बनाया था इस तरीके से एंड डिव के अंदर मैंने क्या किया था एक मैंने इमेज टैग क्रिएट किया था एक मैंने h1 क्रिएट किया था थोड़ी सी और इसे स्पेसिंग दे देते हैं एक हमने लेट्स सपोज कोई पैराग्राफ टैग क्रिएट किया होगा एक हमने एक और दूसरा डिव क्रिएट किया होगा सो दिस वाज माय डिव एंड उसके अलावा यहां पे हमने अपना स्क्रिप्ट स्ट अटैक भी बनाया होगा इस तरीके का सपोज करते हैं हमारे पास एटीएमएल कोड था तो इसका डॉम वर्जन ये हो जाएगा सबसे ऊपर जो है बॉडी आ गई अब बॉडी के अंदर क्या-क्या है बॉडी के अंदर हमारे पास डिव है और स्क्रिप्ट है दोनों कहां पे सेम लेवल पे हैं ऐसा नहीं है डिव स्क्रिप्ट के अंदर है डिव और स्क्रिप्ट दोनों के दोनों बॉडी के अंदर है तो एक तरफ हमारे पास डिव आ जाएगा एक तरफ हमारे पास स्क्रिप्ट आ जाएगा फिर डिव के अंदर क्या-क्या है डिव के अंदर इमेज है h1 है पैराग्राफ है डिव है तो ये सारे के सारे इस टैग के अंदर आ जाएंगे इसके नोड के अंदर आ जाएंगे तो इमेज h1 पैराग्राफ एंड डिव हमारे पास इस तरीके से आ गई अब ये जो स्ट्रक्चर होता है इसे हमें पता है हम क्या कहते हैं इसे इसे हम अपना ट्री लाइक स्ट्रक्चर कहते हैं और इस ट्री लाइक स्ट्रक्चर के अंदर ऊपर जो नोड होती है उसे कहा जाता है पेरेंट और पेरेंट के जो नीचे जितनी भी नोड्स होती है उन्हें हम कहते हैं चाइल्ड नोड तो ये क्या है चाइल्ड बन गया ये क्या है ये भी दूसरा चाइल्ड बन गया जैसे हमारे पास घर में अपने मम्मी पापा होते हैं और हम मम्मी पापा के बच्चे हैं तो वैसे ही बॉडी टैग के अंदर जो जो आ गया वो उसका बच्चा है बॉडी के अंदर अंदर डेव आ गया बॉडी के अंदर स्क्रिप्ट टैग आ गया दे आर ऑल चिल्ड्रन ऑफ दिस पेरेंट टैग इसे पेरेंट कहा जाता है इसे चाइल्ड एलिमेंट कहा जाता है अब वैसे ही अगर मैं सिर्फ इनका एग्जांपल लूं तो यहां पे सिर्फ इतने ट्री का अगर हम एग्जांपल ले तो यहां पे क्या होगा यहां पे हमारा डिव क्या बन जाएगा पेरेंट बन जाएगा किसके लिए पेरेंट बन जाएगा इन चारों के लिए ये चारों क्या बन जाएंगे ये चारों हमारे चाइल्ड नोड्स बन जाएंगे तो ऊपर वाला जो होता है उसे पेरेंट कहते हैं ये सारे इसके चिल्ड्रन हैं डिव का पेरेंट कौन है डिव का पेरेंट बॉडी है तो इस तरीके जैसे हायरा आकी बनती है जैसे घर में हायरा की होती है हम होते हैं हमारे मम्मी पापा होते हैं हमारे ग्रैंड पेरेंट्स होते हैं फिर हमारे ग्रेट ग्रैंड पेरेंट्स होते हैं वैसा ही यहां पर होता है इमेज का पेरेंट कौन है डिव है डिव का पेरेंट कौन है बॉडी है बॉडी का चाइल्ड कौन है डिव है डिव का चाइल्ड कौन है इसके चार चिल्ड्रन हैं इस तरीके से तो पेरेंट का क्या मतलब होता है पेरेंट का मतलब होता है जो नोड ऊपर आ रही है चाइल्ड का क्या मतलब होता है चाइल्ड का मतलब होता है जो नोड डायरेक्टली नीचे आ रही है जैसे ये हमारे पास एक नोड है इस नोड के डायरेक्टली नीचे जो नोड आएगी ये हमारी चाइल्ड नोड होगी दिस विल बी माय पेरेंट नोड और इसके भी जो नीचे नोड्स आते हैं इन सब को हम डिसेंडेंट्स कहते हैं डिसेंडेंट्स डिसेंडेंट्स यानी जो हमारी ही वंश में आगे बढ़ा रहे होते हैं जैसे ग्रैंड पेरेंट्स के लिए हम उनके डिसेंडेंट्स हैं मतलब उन्हीं की सेम लाइन के अंदर हम आगे वी वर बोर्न तो उन्हें डिसेंडेंट्स कहा जाता है बाकी डिसेंडेंट्स आपको नहीं भी याद रहता तो कोई नहीं और तीसरी टर्म तीन टर्म्स इंपॉर्टेंट होती हैं एक होता है पेरेंट एक होता है चाइल्ड यहीं पे नोट कर लेना है एक होता है पेरेंट एक होता है चाइल्ड तीसरी टर्म होती है हमारे पास सिबलिंग सिबलिंग का मतलब होता है भाई बहन अब यहां पे कौन-कौन सिबलिंग है उसको देखते हैं एक बार सिबलिंग वो होते हैं जो दोनों सेम लेवल पे होते हैं ऑलमोस्ट सिमिलर एज के होते हैं तो बेसिकली डिव और स्क्रिप्ट मेरे क्या है सिब्लिंग्स हैं दोनों क्या हैं भाई-भाई हैं या बहन बहन है जो भी आप चाहो इमेज h1 पैराग्राफ और डिव ये चारों क्या हैं एक दूसरे के सिबलिंग नोट्स हैं भाई-बहन वाले नोट्स हैं क्योंकि ये सेम लेवल पे आ रहे हैं तो ये तीन टर्म्स हैं जो हमें अपने इस ट्री के लिए पेड़ के लिए याद होने चाहिए कौन से ट्री के लिए हमारे डॉम ट्री के लिए अब इसी सारे कांसेप्ट को यूज करके एक होमवर्क प्रॉब्लम है जो यहां मैं आपको स्पेसिफिकली दूंगी इस होमवर्क प्रॉब्लम को या तो आप अभी पॉज करके यू कैन ट्राई टू सॉल्व इट और यू कैन ट्राई टू सॉल्व इट आफ्टर द लेक्चर एंड्स तो होमवर्क प्रॉब्लम बेसिकली ये है लेट्स सपोज हमारे पास ये ट्री है दिस इज व्हाट दिस इज माय डॉम ट्री डॉम ट्री के अंदर हमें पता है ऊपर हमारा बॉडी टैग हो सकता है उसके अंदर डिव हो सकता है डिव के अंदर इमेज इमेज h1 इस तरीके से हो सकते हैं अब ये बॉडी टैग क्या है ये बॉडी टैग हमारा पेरेंट है इसका चाइल्ड कौन है इसका चाइल्ड है हमारा डिव ये डिव क्या है ये खुद में अपने आप में एक पेरेंट है और इसका चाइल्ड कौन है ये इसका फर्स्ट चाइल्ड है ये इसका सेकंड चाइल्ड है ये इसका थर्ड चाइल्ड है तो हमारी जितने भी एलिमेंट्स होते हैं या जितने भी नोड्स होती हैं इन नोड्स के पास एक प्रॉपर्टी होती है कॉल्ड फर्स्ट चाइल्ड इनफैक्ट फर्स्ट चाइल्ड मैं आपको सर्च करके भी दिखा सकती हूं इफ यू सर्च फॉर डॉम फर्स्ट चाइल्ड केलिए आप सर्च करोगे तो एमडीएन डॉक्यूमेंटेशन में वी हैव समथिंग कॉल्ड नोड के अंदर फर्स्ट चाइल्ड प्रॉपर्टी तो द रीड ओनली फर्स्ट चाइल्ड प्रॉपर्टी ऑफ द नोड इंटरफेस रिटर्न्स द नोड्स फर्स्ट चाइल्ड इन द ट्री पहला चाइल्ड रिटर्न करती है तो बॉडी टैग का पहला चाइल्ड कौन है बॉडी टैग का पहला चाइल्ड है डिव डिव का पहला चाइल्ड कौन है डिव के तीन चिल्ड्रन हैं डिव का पहला चाइल्ड है इमेज तो हमारे पास एक फर्स्ट चाइल्ड प्रॉपर्टी होती है ऐसे ही एक लास्ट चाइल्ड प्रॉपर्टी भी होती है आप चाहो तो जाके सर्च कर सकते हो यू कैन सर्च ऑन एमडीएन लास्ट चाइल्ड तो ये प्रॉपर्टी आ गई नोड लास्ट चाइल्ड प्रॉपर्टी ये कौन होता है लास्ट चाइल्ड ऑफ़ द नोड तो डिव का तो पहला एक ही चाइल्ड है जिसका एक ही सन है एक ही डॉटर है उसके लिए तो फर्स्ट चाइल्ड भी वही है लास्ट चाइल्ड भी वही है डिव के तीन-तीन चिल्ड्रन है तो उसके लिए लास्ट चाइल्ड कौन है उसके लिए लास्ट चाइल्ड है h1 तो बॉडी टैग के लिए जब हम डॉट फर्स चाइल्ड लिखेंगे जैसे यहां पर अपने कोड में index.htm में मेरी बॉडी टैग के लिए फर्स्ट चाइल्ड है अ डिव तो अगर script.js के अंदर मैं प्रिंट करवाऊं console.log या डॉक्यू बडी फ चाइल्ड तो क्या प्रिंट होक आएगा रिफ्रेश करेंगे ओके दिस इज़ अ टेक्स्ट नोट जो मेरे लिए प्रिंट होके आ रही है बट टेंशन की बात नहीं है व्हाट आई विल डू इज़ तो ये जब हम लिखेंगे d.b. फ चाइल तो हमारे लिए प्रिंट होकर आएगा समथिंग कॉल्ड अ टेक्स्ट अब ये क्या आ गया हमने तो एक्सपेक्ट किया था हमारे लिए डिव प्रिंट होके आएगा पर हमारे लिए तो ये चीज प्रिंट होके आ गई टेक्स्ट प्रिंट होके आ गया बेसिकली जब भी हम नट्स को क्रिएट कर रहे होते हैं जब भी हमारा डॉम का ट्री बनता है तो उसमें तीन तरीके की नोड्स हमारे पास होती हैं फर्स्ट तरीके की होती है हमारी टेक्स्ट नोट्स सेकंड तरीके की नोट्स होती है हमारी कॉमेंट नोट्स थर्ड तरीके की नोट्स होती हैं हमारी एलिमेंट नोड्स डॉम के अंदर हम हमेशा इन एलिमेंट नोड्स के ऊपर ही काम कर रहे होते हैं तो ये जो हमारा डिव है इमेज है इमेज है h1 है जितने भी नोट्स हम एक्सेस करेंगे जिनको डॉम मैनिपुलेशन में यूज़ कर रहे हैं जितने भी नोट्स को हम डेवलपमेंट करते टाइम यूज़ करते हैं ये सारी की सारी एलिमेंट नोट्स भी होती हैं पर हमें ये भी पता होना चाहिए हमारे पास टेक्स्ट एंड कॉमन नोड्स भी क्रिएट होती है और बाय डिफॉल्ट हमारी जो बॉडी टैग के अंदर फर्स्ट नोड जो आ रही है वो हमारी टेक्स्ट नोड आ रही है पर जब भी हम डायग्राम बना के देखते हैं हमें टेक्स्ट नोड्स कॉमेंट नोट्स को इग्नोर करना होता है और हम किसके ऊपर ध्यान देते हैं डॉम ट्री में अपनी एलिमेंट नोट्स को बिकॉज़ दीज आर मोस्ट इंपोर्टेंट पर बेसिक पॉइंट ये था कि हमारे नोड के अंदर फर्स्ट चाइल्ड भी होता है लास्ट चाइल्ड भी होता है हम चाहे तो चिल्ड्रन को भी एक्सेस कर सकते सते हैं जैसे डिव के कौन-कौन चिल्ड्रन है उनको एक्सेस किया जा सकता है फॉर एग्जांपल यहां मैंने किया डॉक्यूमेंट या इसे यही कर लेते हैं डॉक्यूमेंट डॉट क्वेरी सिलेक्टर क्वेरी सिलेक्टर और यहां मैंने किया डिव तो मेरे पास डिव आ गया अब मैं करूं डिव क्वेरी सक्टर डॉ चिल्ड्रन जैसे ही चिल्ड्रन किया मेरे पास क्या आ गया कलेक्शन आ गया अभी इस कलेक्शन की लेंथ जीरो है पर डिव के अंदर अगर मैं कुछ डिफाइन कर दूं यहां ये जो डिव है इसके अंदर लेट्स सपोज मैंने एक और डिव डिफाइन कर दिया और इस डिव के बाद ये मेरा फर्स्ट डिव हो गया इसके अंदर इसके अंदर मैंने एक पैराग्राफ भी डिफाइन कर दिया एक पैराग्राफ बना लेते हैं सिंपल सा ए बी सीडी सेव रिफ्रेश तो इस बार नाउ इफ आई ट्राई टू प्रिंट कि मेरा जो डिव मैंने सिलेक्ट कर लिया और डिव के चिल्ड्रन को मैं प्रिंट करवा रही हूं तो क्या प्रिंट होके आ रहा है मेरे पास प्रिंट होके आ रहा है डिव एंड अ पैराग्राफ तो इस डिव को मैंने एक्सेस किया इस वाले डिव को और इस डिव के अंदर एक और डिव है और एक पैराग्राफ है तो दोनों उसके चिल्ड्रन प्रॉपर्टी के अंदर आ जाते हैं जिसको हम कभी भी एक्सेस कर सकते हैं बेसिकली फर्स्ट चाइल्ड हो गया लास्ट चाइल्ड हो गया चिल्ड्रन हो गया इन सारी चीजों को हम यूज़ करते हैं फॉर नेविगेशन नेविगेशन का बेसिक मतलब होता है जब हमें एक लेवल से दूसरे लेवल में दूसरे से तीसरे लेवल में जाना है बेसिकली हमें ये जानना है कि एक एलिमेंट के बाद कौन सेकन से एलिमेंट्स हमारे पास आ रहे हैं तो आपके लिए होमवर्क प्रॉब्लम ये होगा कि हमें एमडीएन के ऊपर जाना है फर्स्ट चाइल्ड लास्ट चाइल्ड चिल्ड्रन ये सारी जो प्रॉपर्टीज हैं इनके बारे में थोड़ा सा हमें पढ़ना है स्पेसिफिकली फर्स्ट चाइल्ड के बारे में पढ़ो क्या होती है लास्ट चाइल्ड के बारे में पढ़ो क्या होती है और चिल्ड्रन के बारे में पढ़ो क्या होती है तीनों आपको पढ़नी है साथ के साथ मैंने जो आपको तीन टाइप के नट्स बताए टेक्स्ट नोड हो गया कमेंट नोड हो गया एंड एलिमेंट नोड हो गया तीनों के बारे में आपको नोट्स के अंदर लिख लेना है और इनके बारे में भी जाके पढ़ना है दिस इज योर होमवर्क प्रॉब्लम टू रीड सम डॉक्यूमेंटेशन खुद थोड़ा सा घर पे बैठ के प्रोग्रामर वाली फील लेनी है और खुद से चीजें सीखने की ज्यादा से ज्यादा कोशिश करनी है जब तक हम एज अ प्रोग्रामर खुद से सीखने का माइंडसेट नहीं बनाएंगे कोई हमें सारी की सारी चीजें स्पून फीड करके नहीं दे सकता वेब डेवलपमेंट सिर्फ लेक्चर से नहीं सीखी जाती वेब डेवलपमेंट खुद के अंदर हमारे पास एक जल होनी चाहिए कि हां मुझे कुछ नया नया टॉपिक जाके सीखना है क्योंकि अगर हम सोचेंगे लेक्चर के अंदर ही कोई मुझे कवर करके दे दे तो चाहे मैं या कोई और भी आपको 100 150 वीडियोस भी दे दे तब भी वो किसी को कोई पूरा वेब डेवलपमेंट नहीं सिखा सकते वेब डेवलपमेंट ऐसी स्किल है जो खुद की इच्छा के ऊपर आप सीख सकते हो और ऐसा नहीं है कि हमें एक दिन के अंदर आ जाएगा सिर्फ लेक्चर देख के अंदर आ जाएगा बहुत सारी चीजें ऐसी होती है जो हमें खुद जाके एक्सप्लोर करनी होती है दैट इज व्हाई दिस होमवर्क प्रॉब्लम इज रियली रियली इंपोर्टेंट इसको 100% आप सभी को करना ही करना है अगर आप सीरियसली अच्छे डेवलपर बनना चाह रहे हो तो तो ये तो हो गया हमारा होमवर्क प्रॉब्लम ये हो गया हमारा बेसिक्स ऑफ पेरेंट चाइल्ड सिबलिंग एंड अब वापस आ जा अपनी इनर टेक्स्ट प्रॉपर्टी पे इनर टेक्स्ट प्रॉपर्टी कहती है दैट इट रिटर्न्स द टेक्स्ट कंटेंट ऑफ ऑल एलिमेंट्स एंड ऑल इट्स चिल्ड्रन जैसे अगर मैं डिव का इनर टेक्स्ट देखूं तो डिव का तो इनर टेक्स्ट आएगा ही साथ के साथ इसके सारे के सारे चिल्ड्रन का भी इनर टेक्स्ट मेरे पास आएगा इसको एग्जांपल के थ्रू देखते हैं अपने एटीएमएल कोड के अंदर व्हाट आई विल डू इज ये सारा का सारा मैं यहां से हटा लेती हूं कोड बॉडी टैग को खाली करते हैं पेज को खाली करते हैं स्टाइलिंग को थोड़ा सा या स्टाइलिंग को अभी के लिए छोड़ देते हैं व्हाट आई विल डू इज बॉडी टैग के अंदर मैंने एक डिव बनाया डिव के अंदर मैंने एक अन ऑर्डर लिस्ट बनाई अन ऑर्डर लिस्ट के अंदर हम लिस्ट आइटम्स लिखते हैं फॉर अन ऑर्डर लिस्ट से पहले जस्ट बिफोर आई कैन क्रिएट अ h3 हेडिंग इसको हम कह देते हैं फ्रूट्स मैं फ्रूट्स के नाम लिख रही हूं मैंने मैंगो लिख दिया लिस्ट के अंदर सेकंड आइटम मैंने ऑरेंज लिख दिया थर्ड आइटम में मैंने लीची लिख दिया इसको सेव कर लेते हैं रिफ्रेश किया ये मेरे फ्रूट्स के नाम आ गए क्या-क्या नाम है फ्रूट्स में मैंगो ऑरेंज लीची ये तीनों नाम्स मेरे पास आ गए अब यहां पर स्क्रिप्ट ड जए में व्हाट आई विल डू इज सबसे पहले तो अपने डिव को एक्सेस करते हैं मेरा डिव क्या हो जाएगा डिव हो जाएगा डॉक्यूमेंट ड क्वेरी सक्टर एंड यहां य इसे छोटा ही कर लेते हैं यहां इसे एक्सेस करते हैं अपने डिव को सेव कर लिया एंड इसे यहां पे डीआई आर भी करा देते हैं कंसोल डट आई आर माय डिव रिफ्रेश दिस इज माय डिव अब अगर यहां मैंने किया डिव डट इनर टेक्स्ट तो क्या आएगा डट इनर टेक्स्ट के अंदर फ्रूट्स मैंगो ऑरेंज लीची सारी की सारी चीजें आ रही है और देयर इ आल्सो समथिंग कॉल्ड स्लैश एन बैक स्लैश एन का मतलब हमने सीखा ही था जब हम शुरुआत में बेसिक्स ऑफ जावास्क्रिप्ट कर रहे थे बैक स्लैश एन का मतलब होता है नेक्स्ट लाइन तो फ्रूट्स प्रिंट होना है फिर नेक्स्ट लाइन आएगी मैंगो प्रिंट होना है फिर नेक्स्ट लाइन आएगी ऑरेंज प्रिंट होना है फिर नेक्स्ट लाइन आएगी मतलब डिव तो था ही हमारा डॉम ट्री कैसा दिखाई देगा यहां पर डॉम के अंदर सबसे ऊपर हमारे पास नोड बनेगा हमारे डिव का उसके बाद एक नोड आएगा हमारे h4 का आई बिलीव इट इज h4 फिर सेकंड मोड हमारे पास आएगा हमारे अन ऑर्डर लिस्ट का और अन ऑर्डर लिस्ट के अंदर क्याक आएगा अन ऑर्डर लिस्ट के अंदर एक एआई आएगा दूसरा एआई आएगा तीसरा एआई आएगा तीनों लिस्ट आइटम्स तो डिव का जब हमने इनर टेक्स्ट प्रिंट कराया इन सब का इनर टेक्स्ट उसके साथ में प्रिंट होके आया तो ये टेक्स्ट कंटेंट रिटर्न करता है ऐसे ही हमारे पास इनर एचटीएमएल होता है तो हमारे टैग के अंदर प्लेन टेक्स्ट या एटीए कंटेंट्स को प्रिंट कर देता है जैसे अगर मैं प्रिंट करूं डॉट इनर तो यहां आ तो एक स्ट्रिंग ही रही है दोनों केसेस में स्ट्रिंग ही प्रिंट हुई पर इस बार यह जो स्ट्रिंग है इसके अंदर क्या है इसके अंदर सारे के सारे टैग्स मुझे दिखाई दे रहे हैं h3 टैग है वो दिखाई दे रहा है एआई टैग है वो दिखाई दे रहा है ये वाला टैग दिखाई दे रहा है तो टैग रिलेटेड h3 हेडिंग है इसको मैंने इटैलिक बना दिया होता इस तरीके से इटैलिक टैग है इसको मैंने लिख दिया रिफ्रेश किया तो ये थोड़ा सा टेढ़ा होकर मेरे पास आ गया और फिर मैंने लिखा होता ड इनर html.erb सेट करने का क्या मतलब होगा लेट्स सपोज मैंने डिव डॉट इनर टेक्स्ट को सेट कर दिया मैं यहां टेक्स्ट लिख दूं ए बी सीडी एंटर कर दिया क्या हुआ पूरा का पूरा टेक्स्ट यहां पे चेंज हो गया इनफैक्ट अगर मैं एलिमेंट्स के अंदर जाऊं अब मेरे बॉडी टैग के अंदर डिव के अंदर मुझे क्या दिख रहा है कुछ नहीं दिख रहा कोई पैराग्राफ नहीं है कोई अन ऑर्डर लिस्ट नहीं है मतलब ये जो कोड मैंने लिखा था ये वाला पूरा का पूरा कोड ये गायब हो गया और मेरे टेक्स्ट के अंदर क्या आ गया सिर्फ ए बी सीडी लिख कर आ गया तो मैंने इनर टेक्स्ट प्रॉपर्टी को जैसे ही सेट कर दिया वो डिव के अंदर के सारे टेक्स्ट को चेंज कर देती है या कर लेते हैं जैसे ही मैं ड इनर एटीएमएल सपोज ड इनर एटीएमएल के अंदर मुझे सिर्फ चाहिए एक दूसरा डिव तो मैं एक डिव टैग बना सकती हूं आई कैन क्रिएट अ न्यू डिव टैग और इसको कह सकते हैं इनर डिव सेव कर लिया सॉरी इसे सेव नहीं करना इसको सिंपली मुझे एंटर करना है जैसे ही एंटर किया यहां प्रिंट होके आ रहा है इनर डिव और चेंजेज क्या हुए एलिमेंट्स के अंदर जाकर आप देखेंगे डिव के अंदर एक और डिव क्रिएट हो गया और इस डिव के अंदर क्या वैल्यू है इनर डिव तो हम चाहे तो यहां डायनेमिक रन टाइम पे अपने सारी की सारी html5 दिखाऊंगी लेट्स सपोज वी हैव अ हेडिंग इसको कह देते हैं ओल्ड हेडिंग ये हमारी ओल्ड हेडिंग है रिफ्रेश किया ओल्ड हेडिंग आ गई इस हेडिंग को यहां एक्सेस कर लेते हैं लेट हेडिंग इज इक्वल टू डॉक्यूमेंट ड क्वेरी सक्टर और इसके अंदर h1 को एक्सेस कर लिया रिफ्रेश किया हम अपनी हेडिंग को चाहे तो प्रिंट करवा सकते हैं ये मेरी हेडिंग आ गई अब हेडिंग को मुझे चेंज करना है तो आई कैन राइट हेडिंग डॉट इनर टेक्स्ट इ इक्वल टू टेक्स्ट चेंज करने के लिए ओल्ड की जगह इसको कर देते हैं न्यू हेडिंग एंटर किया ये चेंज हो गया टू न्यू हेडिंग मैं चाहूं तो इसका फॉर्मेटिंग भी चेंज कर सकती हूं फॉर्मेटिंग यानी इसको बोल्ड बना सकते हैं इटैलिक बना सकते हैं अंडरलाइन कर सकते हैं डॉट इनर प्रॉपर्टी जिसके बारे में बात करेंगे दैट इज टेक्स्ट कंटेंट टेक्स्ट कंटेंट रिटर्न्स टेक्चुअल कंटेंट इवन फ्रॉम हिडन एलिमेंट्स यानी ये टेक्स्ट कंटेंट इनर टेक्स्ट की तरह ही वर्क करता है पर ये हिडन एलिमेंट्स के लिए भी काम करता है एक छोटा सा मैं एग्जांपल दिखाती हूं हमारी ये जो h1 हेडिंग है इसी h1 हेडिंग के अंदर हम इसका कुछ कुछ एक्स्ट्रा स्टाइल ऐड कर सकते हैं हम इसे दे सकते हैं लेट्स सपोज वी गिव इट अ विजिबिलिटी प्रॉपर्टी ऑफ नन या विजिबिलिटी नन नहीं हिडन दे देते हैं विजिबिलिटी हिडन से क्या हो जाता है ये एलिमेंट हाइड हो जाता है स्क्रीन से सेव किया रिफ्रेश किया ये एक तरीका होता है वैसे स्टाइलिंग ऐड करने का अपने पेज के अंदर तीन तरीके होते हैं एक तो आप स्टाइल टैग के अंदर लिख सकते हो दूसरा स्टाइल ड सीएसएस इंक्लूड कर सकते हो तीसरा तरीका होता है ये वाला तरीका इनलाइन स्टाइलिंग इसे हम कहते हैं पर ये तरीका हमें कभी यूज नहीं करना दिस इज नॉट अ गुड वे ऑफ प्रोग्रामिंग इसको हम कभी नहीं इस तरीके से यूज करे होंगे मैं बस आपको डेमो दे रही हूं सिखा रही हूं इसलिए मैंने ऐसे लिख दिया पर बेसिकली मैंने अपने एलिमेंट को हाइड कर दिया स्क्रीन से h1 अब मुझे दिखाई नहीं दे रहा तो अगर इफ आई डू समथिंग लाइक दिस यहां जो हेडिंग है इस एलिमेंट को मैं प्रिंट करवाऊं मेरे पास मेरा हेडिंग एलिमेंट तो प्रिंट होके आ जाएगा वह हाईलाइट भी हो रहा है स्क्रीन में बस वह दिखाई नहीं दे रहा पर जैसे ही मैंने किया हैडिंग ड इनर टेक्स्ट एंटर किया क्या आया मेरे पास एमटी चीज़ आई तो हेडिंग एलिमेंट इवन दो इसके अंदर ओल्ड हेडिंग वाला टेक्स्ट लिखा हुआ है पर वो इनर टेक्स्ट से मुझे दिखाई नहीं देगा तो उसके लिए मुझे क्या यूज़ करना पड़ेगा उसके लिए मुझे यूज़ करना पड़ेगा टेक्स्ट कंटेंट तो टेक्स्ट कंटेंट का काम होता है हिडन एलिमेंट्स का भी यह टेक्स्ट हमें दिखा देता है तो इस तरीके से हमारे पास अपनी चार मेन प्रॉपर्टीज होती है जिनको हम यूज़ करते हैं टू एक्सेस आवर एलिमेंट्स एंड टू चेंज देयर वैल्यूज इस इसके अलावा भी और भी कई सारी प्रॉपर्टीज होती हैं पर वही सारी की सारी चीजें हम नहीं सीख सकते डॉम के अंदर जो इंपॉर्टेंट पार्ट्स हैं जिनको हम अपने प्रोजेक्ट्स के अंदर यूज़ करते हैं और ज्यादा फ्रीक्वेंसी एंड इसके बाद हम करने वाले हैं कुछ-कुछ प्रैक्टिस तो प्रैक्टिस क्वेश्चंस हम कुछ-कुछ सॉल्व करेंगे और जितनी भी नॉलेज अभी तक हमने ली है बेसिक्स की अपने डॉम की उसको हम यहां पर यूज़ कर रहे होंगे सबसे पहले तो हमारा क्वेश्चन प्रैक्टिस क्वेश्चन कह रहा है क्रिएट अ h2 हेडिंग एलिमेंट विद टेक्स्ट हेलो जावास्क्रिप्ट तो पार्ट्स में करते हैं छोटे-छोटे पार्ट्स में पहले सिर्फ इतना काम अपने लिए करते हैं आल्सो यहां पर आप चाहें तो लेक्चर को पॉज भी कर सकते हैं खुद से अपने क्वेश्चन जो है उसको सॉल्व करने का ट्राई करना है index.htm के अंदर आ जाते हैं वी कैन डिलीट दी एंटायस जो चीज़ है उसे डिलीट कर देते हैं इनफैक्ट अपनी style.css से हम पूरी स्टाइलिंग भी डिलीट कर सकते हैं डिलीट कर दिया खाली हो गया हमारा पेज रिफ्रेश किया दिस इज़ कंपलीटली एमटी और script.js को भी एमटी कर लेते हैं अब मुझे क्या करना है सबसे पहले काम दिया है कि मुझे बॉडी टैग के अंदर एक h2 हेडिंग टैग बनाना है जिसके अंदर हमें लिखना है हेलो जावास्क्रिप्ट तो इस तरीके से हमने हेलो जावास्क्रिप्ट यहां पर लिख दिया रिफ्रेश किया ये हमारे लिए हमारा h2 आ गया फिर हमें क्या करना है अपेंड अपेंड होता है लास्ट में ऐड कर देना फ्रॉम अपना कॉलेज स्टूडेंट्स ये एक स्ट्रिंग है जिसको मुझे अपेंड करना है टू दिस टेक्स्ट ये जो टेक्स्ट मैंने लिखा है इसके अंदर अपेंड करना है यूजिंग जावास्क्रिप्ट मतलब मेरी जो h2 हेडिंग है फाइनली उसके अंदर होना चाहिए हेलो जावास्क्रिप्ट फ्रॉम अपना कॉलेज स्टूडेंट्स इस तरीके से कुछ प्रिंट होके आना चाहिए फाइनल जो h2 हेडिंग होगी उसको कैसे करेंगे अब सबसे पहले तो जब भी मुझे चेंज करना है तो जिस भी एलिमेंट के अंदर चेंज करना है सबसे पहले तो उस एलिमेंट को हम एक्सेस करेंगे तो एक्सेस द एलिमेंट फर्स्ट उसके बाद हमें प्रॉपर्टी देखनी पड़ेगी कौन सी प्रॉपर्टी को हम यूज़ कर रहे होंगे वो चेंज करने के लिए और फिर फाइनली अपना चेंज कर दो तो सबसे पहले बात करते हैं कौन से एलिमेंट के अंदर चेंज करना है हमें h2 एलिमेंट के अंदर चेंज करना है तो इसको हमें एक्सेस भी करना पड़ेगा एक्सेस कैसे करेंगे एक्सेस करने के लिए तीन में से एक चीज पता होनी चाहिए या तो टैग पता होना चाहिए क्लास पता होनी चाहिए आईडी पता होनी चाहिए हमें क्या पता है हम टैग पता है क्योंकि आईडी और क्लास तो है नहीं तो इसको टैग के बेसिस पे एक्सेस कर लेते हैं लेट h2 इ इक्वल ट डॉक्यूमेंट डॉ क्वेरी सिलेक्टर और इसके अंदर हम लिख देंगे h2 प्रिंट भी करा लेते हैं console.dir हमारा h2 सेव रिफ्रेश ये हमारे पास हमारा h2 आ गया अब इस h2 के अंदर हमें क्या चेंज करना है हमें इसके अंदर टेक्स्ट को ऐड करना है तो टेक्स्ट को ऐड करने के लिए कौन सी प्रॉपर्टी होती है दो प्रॉपर्टीज की बात की है हमने टेक्स्ट को अगर हमें चेंज करना है तो हम अपनी इनर टेक्स्ट प्रॉपर्टी को यूज़ कर रहे होंगे तो यहां पर चेंज लाने के लिए वी विल यूज आवर इनर टेक्स्ट प्रॉपर्टी तो यहां पे हम h2 इनर टेक्स्ट जो है उसे प्रिंट करवा सकते हैं अभी h2 के इनर टेक्स्ट में क्या है हेलो जावास्क्रिप्ट है हमें इस टेक्स्ट को चेंज करना है हमें इस टेक्स्ट को क्या बनाना है हमें बनाना है h2 इनर टेक्स्ट की वैल्यू को अगर हम ए स चेंज करें तो रिफ्रेश होके क्या हो जाएगी ये ए स बन जाएगी पर मुझे इसे एी स नहीं बनाना मुझे जो भी पुराने वाला टेक्स्ट था उसको तो रखना ही है मतलब ये वैल्यू तो रखनी है प्लस इसके अंदर मुझे क्या ऐड करना है यहां पे मुझे ऐड करना है फ्रॉम अपना कॉलेज स्टूडेंट्स ये वैल्यू मुझे ऐड करनी है तो यहां क्या कर रही हूं यहां मैं जावास्क्रिप्ट के काफी बेसिक कॉन्सेप्ट्स को अप्लाई कर रही हूं सबसे पहला बेसिक कॉन्सेप्ट्स कि पुरानी जो वैल्यू थी उसके अंदर नई वैल्यू जोड़ने के लिए पहले तो पुरानी वैल्यू को लिखो उसके बाद नई वैल्यू को लिखो दूसरी चीज यहां मैं दो स्ट्रिंग्स को क्या कर रही हूं कॉन्कैटिनेट कर रही हूं कॉन्कैटिनेट करने का क्या मतलब होता है कंकट करने का मतलब दो स्ट्रिंग्स को जोड़ना तो यहां मैं प्लस को यूज़ करके कंकट कर रही हूं दो स्ट्रिंग्स को सेव कर कर लेंगे रिफ्रेश करेंगे क्या हुआ हमारा ये जो पूरी की पूरी हेडिंग थी ये चेंज होकर आ गई कैसे चेंज हुई पहले मैंने h2 को एक्सेस किया उसके बाद मुझे पता चला मुझे इनर टेक्स्ट प्रॉपर्टी को चेंज करना है अब फिर क्या चेंज लेके आना है उसकी मैंने वैल्यू लिख दी तो इस तरीके से हम अपने एटीएमएल एलिमेंट्स को एक्सेस करके उनकी वैल्यूज को चेंज कर सकते हैं अब आ जाते हैं अपने सेकंड प्रैक्टिस क्वेश्चन की तरफ क्रिएट थ्री डिब्स विद कॉमन क्लास नेम तीन हमें डेव एलिमेंट्स बनाने हैं तीनों को सेम कॉमन क्लास नेम देना है क्या होना चाहिए क्लास का नाम बॉक्स होना चाहिए तो पहले तो इतना काम कर लेते हैं index.htm के अंदर इस h2 के बाद लेट्स क्रिएट थ्री डिब्स ये हमारा फर्स्ट डिव हो गया इसको फर्स्ट डिव कह देते हैं डिव को समझने में अगर आपको थोड़ा सा भी डाउट हो रहा है तो आप जाके हमारी एचटीएमएल वाली जो क्लास है उसको अटेंड कर सकते हो बड़ा लेक्चर नहीं है एक ही घंटे का लेक्चर है ज्यादा टाइम नहीं लगेगा आपको इतना टाइम डेडिकेट कर सकते हो अच्छे डेवलपर बनना चाहते हो तो अब यहां पर ये हमारा फर्स्ट डेव हो गया सेकंड डेव पे आ जाते हैं दिस इज माय थर्ड डिव तीनों डिप्स को मैंने सेम क्लास दे दिया सेव कर लिया ये हमारा फर्स्ट पार्ट हो गया रिफ्रेश करेंगे सो दिस इज़ माय फर्स्ट डिव दिस इज़ माय सेकंड डिव दिस इज़ माय थर्ड डिव आल्सो लेट मी शो यू समथिंग इंटरेस्टिंग हमारे जो डिव हैं इन्हें हम बॉक्सेस की तरह भी डिस्प्ले करा सकते हैं मतलब इनको हम कुछ स्टाइलिंग दे सकते हैं डॉट बॉक्स और इनको मैं एक हाइट दे सकती हूं 100 पिक्सल्स विड्थ दे सकती हूं 100 पिक्सल्स सेव किया रिफ्रेश किया तो थोड़ा सा साइज बढ़ गया इनका सबको मैं एक बॉर्डर दे सकती हूं वन पिक्सल सॉलिड ब्लैक कैसे दे रही हूं वो आपको सीएसएस की वीडियो में जाके देखना पड़ेगा बाकी ये मैं एक्स्ट्रा करा रही हूं ये अगर मुझे समझ भी नहीं आ रहा तो भी कोई इशू की बात नहीं है दिस इज समथिंग एक्स्ट्रा इनको पांच पिक्सेल की मार्जिन दे देते हैं मार्जिन दे दिया साथ के साथ इनका टेक्स्ट अलाइन कर देते हैं सेंटर रिफ्रेश किया टेक्स्ट अलाइन सेंटर हो गया इन सबको एक बैकग्राउंड कलर हम दे सकते हैं प्यारा सा लाइट सा कोई बैकग्राउंड कलर रखते हैं लेट्स गिव देम एक्वा मरीन रिफ्रेश किया एक्वा मरीन आ गया तो इस तरीके से अपने डिप्स को बॉक्सेस की तरह दिखाना इज वेरी कॉमन इन एटीएमएल एंड सीएसएस मैंने क्या किया ये मेरा फर्स्ट डेव हो गया ये मेरा सेकंड डेव हो गया मेरा थर्ड डेव हो गया अब इनके अंदर कुछ चेंजेज करेंगे तो हमें आईडिया लगता रहेगा किसके अंदर चेंज कर रहे हैं अब मुझे कोड के अंदर क्या करना है मुझे बेसिकली करना है प्रैक्टिस क्वेश्चन में एक्सेस देम तीनों को एक्सेस करना है ऐड सम यूनिक टेक्स्ट टू ईच ऑफ देम सबके अंदर कुछ ना कुछ यूनिक टेक्स्ट ऐड करना है कुछ भी टेक्स्ट ऐड कर सकते हैं तो स्क्रिप ज के अंदर आ जाते हैं इतने पार्ट को कर लेते हैं कॉमन डाउट सबसे पहले तो एक्सेस करते हैं इनको लेट डिव इ इक्वल टू डॉक्यूमेंट डॉट क्योंकि हमारे पास मल्टीपल डिव है हम क्वेरी सिलेक्टर ऑल कर सकते हैं और यहां लिख सकते हैं अपनी क्लास का नाम डॉट बॉक्स सेव किया कसोल डॉट लॉक करवा लेते हैं अपने डिब्स को सेव रिफ्रेश तो मेरे सारे डिब्स आ गए कैसे आ गए नोड लिस्ट के अंदर आ गए अब मुझे इंडिविजुअल डिव को एक्सेस करना है तो उसके लिए मैं क्या कर सकती हूं उसके लिए आई कैन प्रिंट डव्स ऑफ़ ज़ीरो सेव रिफ्रेश तो ये मेरा फर्स्ट डिव मेरे पास आ गया ऐसे ही डव्स ऑफ वन प्रिंट किया तो ये सेकंड डिव आ गया डिब्स ऑफ टू प्रिंट किया थर्ड डिव आ गया कैसे वर्क कर रहा है नोड लिस्ट नोड लिस्ट भी एरे की तरह ही वर्क कर रही है मतलब मैं इस तरीके से इंडेक्स वाइज एक्सेस कर सकती हूं अपनी वैल्यूज को तो इसीलिए वो जो एरे वाले कांसेप्ट थे जिनको हम पहले पढ़ रहे थे ऑब्जेक्ट वाले कांसेप्ट थे शुरुआत में जब बेसिक जावास्क्रिप्ट पढ़ते हैं हमें चीजें बहुत बेसिक लग रही होती हैं हमें लगता है कि क्या प्रैक्टिकल यूज़ है एरे पढ़ लिया ठीक है थोरेट्स यूज़ कहां है प्रैक्टिकल यूज़ यहां है जब हम एचटीएमएल सीएसएस के साथ चीजों को जोड़ के देखते हैं यहां हमें पता चल रहा है ठीक है वो जो छोटी सी इंडेक्स वाला कांसेप्ट हमने पढ़ा था वो किस तरीके से डॉम के अंदर अप्लाई हो रहा है जाके वेंचुरी तो ये तो मैंने इंडिविजुअल डिफ्स को एक्सेस कर लिया इंडिविजुअल डिफ्स की प्रॉपर्टीज को चेंज करने के लिए क्या कर सकते हैं डिब्स ऑफ 0 डॉट बेसिकली इनर टेक्स्ट को हम चेंज करना चाहते हैं इनर टेक्स्ट इसको हम कह सकते हैं न्यू यूनिक वैल्यू वन इसको न्यू यूनिक वैल्यू वन कह देते हैं रिफ्रेश किया तो ये आ गई न्यू यूनिक वैल्यू वन इसी तरीके से हम इस सेकंड वाले की भी वैल्यू चेंज कर सकते हैं न्यू यूनिक वैल्यू टू एंड इसी तरीके से हम थर्ड वाले की भी वैल्यू चेंज कर सकते हैं न्यू यूनिक वैल्यू थ्र इसे डेव ऑफ टू कर लेते हैं सेव रिफ्रेश तीनों की वैल्यूज हमारे पास चेंज होकर आ गई अब यह तो थी बहुत आम जिंदगी यह थी बिगनर वाली जिंदगी कि मैंने इस तरीके से अपने कोड को लिख दिया इसमें कोई प्रॉब्लम नहीं है हम जो करना चाहता था प्रैक्टिस क्वेश्चन जो कराना चाहता था वो काम हमसे हो गया पर इसके भी एक और लेवल अब जाके आपको प्रोग्रामिंग करनी है तो हमें ये याद आएगा जब भी हमें एरे के इंडेक्स को एक्सेस करना होता है और हमें पूरे एरे को ट्रैवर्स करना होता था हम क्या करते थे हम लूप्स का यूज करते थे तो यहां पर भी हम लूप्स को यूज कर सकते हैं कैसे यूज करेंगे हम चाहे तो अपना फॉर ऑफ लूप यूज कर सकते हैं लेट डिव ऑफ डिव डिव ऑफ डिब्स है और अभी के लिए क्या करेंगे सिर्फ अपने इंडिविजुअल डिव को प्रिंट करवाएंगे सेव किया रिफ्रेश किया तो ये मेरा पहला डिव मेरे लिए प्रिंट होके आ गया ये मेरा दूसरा डिव आ गया थर्ड डिव आ गया तीनों डिफ्स की क्लास भी आ गई तीनों डिव को बॉक्स क्लास दे रखी है अब इंडिविजुअल डिव की हम चाहें तो इनर टेक्स्ट भी प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया पहले डिव का था फर्स्ट डिव सेकंड डिव थर्ड डिव आप बोलोगे दीदी ये तो यहां पे प्रिंट होके आ रहा है यहां तो कुछ और ही है इन टेक्स्ट में इसीलिए क्योंकि ओरिजिनल तो यही था ना फर्स्ट डेव सेकंड डेव थर्ड डेव ये तो हमने बाद में चेंज किया स्क्रिप्ट . जए में प्रिंट करने के बाद चेंज किया और यहां पर इसी वैल्यू को मुझे चेंज करना है तो आई कैन राइट डिव डॉट इनर टेक्स्ट इ इक्वल टू और यहां अपनी स्ट्रिंग लिख सकते हैं न्यू यूनिक वैल्यू और यहां अपना इंडेक्स लिख सकते हैं अब इंडेक्स कैसे लिखें इंडेक्स के लिए एक और वेरिएबल बना लेते हैं इंडेक्स इ 0 या वन वन से स्टार्ट कर देते हैं और यहां पर अपने बैक टेक्स लिख लेंगे इंडेक्स और यहां हर बार इंडेक्स को कर देंगे प्लस प्लस तो ये जो काम मुझे करके दे रहा था ये कोड अब ये वाला कोड मुझे सेम काम करके देगा रिफ्रेश किया इसने क्या किया सेम काम करके दे दिया कैसे करके दिया क्योंकि हमने जावास्क्रिप्ट के कॉन्सेप्ट्स को यूज़ किया अब अभी तो मुझे तीन लाइनें लिखनी पड़ रही थी तीन डिफ्स के लिए कल को हो सकता है मेरे पास 100 डिफ्स हो तो मुझे क्या करना पड़ता 100 लाइनें लिखनी पड़ती पर अब मुझे कोई चेंज नहीं करना पड़ा अब अगर यहां पर इफ आई डिसाइड कि नहीं मुझे तो सात डिफ्स चाहिए अपने कोड के अंदर रिफ्रेश किया मेरे पास सेवन डिब्स आ गए तो सातों डिफ्स को मैंने क्या किया यूनिक वैल्यू दे दिया वैल्यू वन वैल्यू टू वैल्यू थ्री वैल्यू फोर वैल्यू फाइव 6 7 8 ना सॉरी नाइन डिब्स है मेरे पास तो नाइन के नाइन को मैंने यूनिक वैल्यू सेट कर दिया यूजिंग जावास्क्रिप्ट लूप तो कोड के अंदर मुझे कुछ चेंज नहीं करना पड़ा इसीलिए जब भी हम चाइल्ड नोट्स के ऊपर सारी नोट्स के लिए कुछ काम करना है वी विल ऑलवेज प्रेफर डूइंग इट इन अ लूप तो इस तरीके से फॉर ऑफ लूप को हम यूज़ कर सकते हैं ये सारे कांसेप्ट हैं जो हम ऑलरेडी पढ़ चुके हैं जावास्क्रिप्ट के अंदर बस उन्हीं का हम रिवीजन कर रहे हैं ये क्या है मेरे पास ये स्ट्रिंग इंटरपोलेशन मैं यूज़ कर रही हूं यहां पे मेरा वेरिएबल है जिसकी वैल्यू यूज़ कर रहे हैं इंडेक्स की वैल्यू है लूप्स हमें ऑलरेडी लिखना आता है तो इस तरीके से अपने डॉम के अंदर हम मल्टीपल एलिमेंट्स को एक्सेस कर सकते हैं और उनकी वैल्यू को हम सेट कर सकते हैं अब नेक्स्ट हम डॉम मैनिपुलेशन के अंदर पढ़ने वाले हैं अपने एटिबल के बारे में जब भी हमारे पास कोई भी html5 वी हैव अ टैग कॉल्ड डिव डिव एलिमेंट हमने बनाया दिस इज अ डिव इसे सेव कर लेंगे एंड ये हमारे पास ब्राउजर के ऊपर हमारा डिव आ गया अब इस डिव के अंदर कई सारे एट्रबीक हैं एटिबल को पहले भी मैंने बताया था हमारे एलिमेंट्स के अंदर जो हम एडिशनल इंफॉर्मेशन देते हैं दैट इज इन द फॉर्म ऑफ एटिबल जैसे इसे हम एक आईडी एट्रिल दे सकते हैं इसको मैंने आईडी दे दी बॉक्स तो ये क्या बन गया ये इसका एट्रिशन बन गया यानी रिलेटेड इंफॉर्मेशन बन गई तो रिफ फ्रेश करेंगे ये आईडी एज सच हमें दिखेगी नहीं पर एलिमेंट्स के अंदर जाएंगे डिव के अंदर तो यहां मुझे दिख रहा है आईडी इसके पास है बॉक्स तो इस तरीके से कई सारे डिफरेंट डिफरेंट एटिबल होते हैं हमारे मल्टीपल टैग्स के पास अगर हमारे पास कोई इमेज टैग है तो इमेज टैग के अंदर भी हमारे पास सोर्स एटिबल होता है जिसमें हम अपनी इमेज का लिंक देते हैं अभी एस सर्च को हम कोई लिंक पेस्ट नहीं करेंगे तो इस तरीके का हमारे पास एरर आ जाएगा कि हमने कोई लिंक नहीं दिया इमेज के लिए तो ये कंसोल विंडो के अंदर भी आ रहा है बट बेसिकली ये जो सोर्स है ये क्या बन गया ये एक एट्रिल बन गया जैसे अगर हम बात करें अपने किसी पैराग्राफ टैग के लिए तो पैराग्राफ टैग को मैंने क्लास दे दी पैराग्राफ और यहां दिस इज अ सिंपल लाइन इस तरीके का मैंने कुछ पैराग्राफ लिख दिया रिफ्रेश किया तो ये क्या आ गया पैराग्राफ के अंदर क्लास जो है ये एक एट्रबीक करना होता है तो उसके लिए मेरा जो नोड होता है नोड का मतलब क्या है कि अगर मेरे पास डिव है तो डिव वाला जो भी नोड होता है हमारे डॉम के अंदर इस नोड के अंदर मेरे पास एक स्पेशल मेथड होता है कॉल्ड गेट एट्रिल अगर मुझे किसी भी डिव के लिए उसके एट्रियो की वैल्यू को गेट करना है तो मैं उसन नोड के लिए गेट एट्रबीक हूं और उसके अंदर जिस भी एटिबल की मुझे वैल्यू चाहिए उस एट्रबीक हैं तो सबसे पहले इस डिव के बारे में बात करते हैं सबसे पहले तो इस डिव को एक्सेस करेंगे स्क्रिप्ट . जए के अंदर लेट डिव इ इक्वल टू डॉक्यूमेंट ड क्वेरी सिलेक्टर हम सबको पता है क्वेरी सिलेक्टर कैसे काम करता है हमें अपने डिव को एक्सेस करना है तो कसोल डलॉग किया अपना डिव सेव रिफ्रेश कंसोल ये हमारे पास हमारा डेव आ गया अब इस डेव के लिए मुझे क्या करना है इस डेव के लिए मुझे करना है गेट एट्रबीक ब्यूट मेथड के अंदर हमें आईडी एट्रिल चाहिए फॉर एग्जांपल और इसी वैल्यू को हम यहां लिख सकते हैं लेट वैल्यू या लेट आईडी इ इक्वल टू और फिर हम कसोल डलॉग करवा सकते हैं अपनी आईडी को सेव कर लिया रिफ्रेश कर लिया ये हमारे पास क्या आ गई हमारी आईडी की वैल्यू आ गई व्हिच इज इक्वल टू बॉक्स क्योंकि इसे हमने क्या आईडी दी थी इसे हमने बॉक्स आईडी दी थी इसी तरीके से हम और भी एटिबल की वैल्यू है जिसको एक्सेस कर सकते हैं फॉर एग्जांपल यहां पर मैंने इसको कोई नेम एट्रिल दे दिया मैंने खुद से इसको कोई नेम एट्रिया और इसको नेम मैंने दिया है जे एस डिफ इस तर तरीके का मैंने इसे कोई नेम एट्रिया तो स्क्रिप्ट ड जए के अंदर अब हम अपने नेम एट्रबीक हैं तो हमारे नेम की वैल्यू क्या हो जाएगी उसे हम यहां पर प्रिंट करवा देंगे सेव किया रिफ्रेश किया सो दिस इज माय नेम एटिबल जेएस डिव इसी तरीके से हम चाहे तो अपने पैराग्राफ से उसके क्लास के नाम को भी एक्सेस कर सकते हैं यहां पे लेट पैरा इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर हमारा पैराग्राफ और फिर हम कंसोल ड लॉग करवा सकते हैं प डॉट गेट एट्रिल और यहां पे क्लास का हमने नाम प्रिंट करवा दिया सेव किया रिफ्रेश किया p इज़ नॉट डिफाइंड ओके दिस इज सपोज्ड टू बी पैरा सेव रिफ्रेश तो हमारी क्लास का नाम हमारे पास था पैरा यही सेम नाम हमने अपनी क्लास को दिया था जो हमारे लिए यहां पर प्रिंट होकर आ गया तो ये तो है एट्रिल की वैल्यू को गेट करने के लिए हमारे पास एक और मेथड होता है टू सेट द एट्रिल वैल्यू अगर हमें किसी भी एट्रिशन की वैल्यू को चेंज करना है जैसे मुझे चेंज करना है एट्रिल की वैल्यू को तो हम मेथड के अंदर अपना एट्रिल पास करेंगे और फिर नई वैल्यू पास करेंगे फॉर एग्जांपल ये जो पैराग्राफ है इसके लिए मैं चाहती हूं इसकी क्लास का नाम चेंज हो जाए क्लास का नाम कहां दिखता है एलिमेंट्स के अंदर पैराग्राफ में अभी ये क्लास का नाम मुझे पैरा दिखाई दे रहा है पर मैं चाहती हूं यह वैल्यू चेंज हो जाए तो उसके लिए आई कैन डू सेट एटिबल फॉर पैरा और क्लास का नाम मुझे चेंज करना है टू न्यू क्लास यह बनाना है मुझे क्लास का नाम सेव करेंगे रिफ्रेश करेंगे अब मेरे पैराग्राफ की क्लास का नाम क्या हो गया न्यू क्लास हो गया हम चाहे तो डायनेमिक यहां पर भी कर सकते हैं आई कैन डू पैरा डॉट सेट एट्रबीक अंदर मुझे अब अपनी क्लास का नाम चेंज करके करना है 1 2 3 यानी क्लास का नाम 1 2 3 होना चाहिए एंटर किया यहां एज स चेंज नहीं दिख रहा पर जैसे ही एलिमेंट्स में जाएंगे यहां पे ऑटोमेटिक चेंज हो गया इट चेंज टू 1 2 3 तो इस तरीके से हम किसी भी एट्रिल को किसी भी टैग के लिए किसी भी एलिमेंट के लिए चेंज कर सकते हैं अब एक स्पेशल एटिबल हमारे पास होता है व्हिच इज फॉर स्टाइल स्टाइल को एज सच एटिबल की तरह भी एक्सेस कर सकते हैं पर जनरली हम स्टाइल को कैसे एक्सेस करते हैं किसी भी एलिमेंट का अगर हमें स्टाइल की वैल्यू चेंज करनी हो तो हम लिखते हैं अपने नोड की वैल्यू डॉट स्टाइल उससे किसी भी नोड का हमारे पास स्टाइल आ जाता है फॉर एग्जांपल यहां पर यह पार्ट हटा लेते हैं सेव इक्ड html.com गिव इट अ बैकग्राउंड कलर ऑफ डॉजर ब्लू सेव रिफ्रेश ये क्या हो गया ये हमारा डिव हो गया हम इस डिव को चाहे तो और थोड़ा सा बेटर कलर देने के लिए लेट्स गिव इट अ टेक्स्ट कलर ऑफ वाइट रिफ्रेश य हमारे पास वाइट कलर आ गया हम चाहें तो इसे एक बॉर्डर दे सकते हैं वन पिक्सल सॉलिड ब्लैक सेव रिफ्रेश तो ये कुछ-कुछ स्टाइलिंग हमारे पास आ गई इस डिव के लिए अब मुझे अगर इस डिव की जो स्टाइलिंग है उसको एक्सेस करना है जावास्क्रिप्ट के अंदर तो सब सबसे पहले तो हम डिव को एक्सेस करेंगे लेट डिव इज इक्वल टू डॉक्यूमेंट ड क्वेरी सक्टर और हमने अपने डिव को एक्सेस कर लिया अब जब डिव को प्रिंट करवाएंगे तो पूरा का पूरा बॉक्स हमारे पास आ जाएगा और हम प्रिंट करवा सकते हैं ड स्टाइल तो क्या होगा एक ऑब्जेक्ट हमारे पास आएगी जिसमें सारी की सारी स्टाइलिंग होगी इस डिव की एंड इसके अंदर मैक्सिमम चीजें अभी खाली हैं क्योंकि ज्यादा स्टाइलिंग हमने दी नहीं है तो ये हमारी एक इनलाइन स्टाइल की ऑब्जेक्ट हमारे पास आ जाएगी जो सारा का सारा इनलाइन स्टाइल हमें दिखाती है इनलाइन स्टाइल वो स्टाइल होता है जो डायरेक्टली हम अपने टैग्स के अंदर लिखते हैं फॉर एग्जांपल टैग के अंदर ही मैंने अपने लिए स्टाइल लिखा बैकग्राउंड कलर मुझे देना है रेड अपने बॉक्स को तो इनलाइन स्टाइल की हाईएस्ट प्रायोरिटी होती है इसीलिए इसको कभी यूज नहीं करना मैं आपको सिर्फ दिखाने के लिए यूज़ कर रही हूं रिफ्रेश किया बैकग्राउंड कलर हमारे पास रेड आ जाएगा ये इनलाइन स्टाइल मुझे यहां भी दिखाई दे रहा है माय बैकग्राउंड कलर इज इक्वल टू रेड पर जैसे ही कंसोल के अंदर अपने डिव को प्रिंट करवाएंगे और डिव डॉट स्टाइल को प्रिंट करवाएंगे तो डिव डॉट स्टाइल में अगर आप जाओगे बैकग्राउंड कलर पर जाओगे तो बैकग्राउंड कलर के अंदर मुझे दिख रहा है बैकग्राउंड कलर इज इक्वल टू रेड तो यह जो वैल्यू थी स्टाइल की यह मेरे जावास्क्रिप्ट कोड के अंदर एक्सेसिबल है और इस स्टाइल की वैल्यू को हम यहां से चेंज भी कर सकते हैं इफ आई वांट रिफ्रेश कर लेते हैं ओरिजिनल पे आ जाते हैं मुझे स्टाइल के अंदर कलर को चेंज करना है तो आई कैन सिंपली डू . स्टाइल बैकग्राउंड कलर हम लिख सकते हैं लद आपको वीएस कोड सजेस्ट भी कर देगा नहीं तो बैकग्राउंड कलर के लिए यह होता है जो भी प्रॉपर्टी का नाम सीएसएस में होता है ना उसी प्रॉपर्टी को बस हम अपने कैमल केस में कन्वर्ट कर देते हैं जैसे अगर प्रॉपर्टी का नाम होगा कलर तो व जावास्क्रिप्ट के अंदर आके रहेगा कलर अगर प्रॉपर्टी का नाम है बैकग्राउंड कलर यह सीएसएस के अंदर अगर हम उसे बैकग्राउंड कलर लिखते हैं तो जावास्क्रिप्ट के अंदर वो हो जाएगा बैकग्राउंड और बिना हाईफिन के कलर और ये सेकंड लेटर कैपिटल हो जाएगा अगर प्रॉपर्टी का नाम है टेक्स्ट या प्रॉपर्टी का नाम है लेट्स सपोज फॉन्ट साइज यह है सीएसएस जिंदगी यह है जावास्क्रिप्ट जिंदगी यहां हो जाएगा ये फॉन्ट साइज तो इस तरीके से कन्वर्ट हो जाता है तो बैकग्राउंड कलर वी कैन सेट द बैकग्राउंड कलर टू बी यहां पे डबल कोड्स के अंदर वैल्यू लिखनी होती है कि हमें ग्रीन करना है सेव किया रिफ्रेश किया मैंने क्या किया जावास्क्रिप्ट कोड से ही मैंने अपना बैकग्राउंड कलर चेंज कर दिया अब कल को जाके अगर इस ग्रीन की जगह आई वांट टू मेक इट पर्पल तो इसको चेंज करके हम पर्पल भी कर सकते हैं रिफ्रेश किया ये पर्पल हो गया अगर हम चाहते हैं फॉन्ट के साथ मुझे कुछ चेंजेज करने हैं तो आई कैन सिंपली राइट ड स्टाइल ड फॉन्ट साइज को अगर हम बड़ा बनाना चाहते हैं लेट्स मेक इट लार्जर लेट्स मेक इट अ 26 पिक्सल्स फॉन्ट इसे कर लेते हैं सेव किया रिफ्रेश किया तो यह क्या हो गया मेरे फॉन्ट का साइज बड़ा हो गया हम चाहे कि मुझे इसकी वैल्यू चेंज करनी है वैल्यू चेंज करना तो हमें ऑलरेडी आता है कि हम अपने इनर टेक्स्ट को सेट कर देते हैं टू हेलो सेव किया रिफ्रेश किया तो इस तरीके से बहुत सारी अब प्रॉपर्टीज हैं स्टाइल हो गया एटिबल हो गए टेक्स्ट हो गया कलर हो गया बहुत सारी चीजें हैं कलर स्टाइल का ही पार्ट है और वो सारा का सारा अब जावास्क्रिप्ट से चेंज कर पाना पॉसिबल है हम चाहे तो एक और इंटरेस्टिंग चीज कर सकते हैं हमने पढ़ा था विजिबिलिटी हिडन के बारे में तो डिव के अंदर स्टाइल के अंदर जाके मेरी जो विजिबिलिटी प्रॉपर्टी है उसको अगर मैंने सेट कर दिया टू हिडन तो क्या होगा मेरा एलिमेंट गायब हो जाएगा स्क्रीन से रिफ्रेश किया एलिमेंट गायब हो गया तो इस तरीके से आप चाहो तो जावास्क्रिप्ट के अंदर बैठे-बैठे बिना एचटीएमएल सीएसएस के अंदर चेंज किए हुए हम अपने एलिमेंट्स को स्क्रीन से गायब कर सकते हैं हाइड भी कर सकते हैं नेक्स्ट चीज जिसके बारे में हम पढ़ने वाले हैं दैट इज हाउ कैन वी इंसर्ट एलिमेंट्स हमने बहुत सारी चीजें देख ली हमने देख ली स्क्रीन के ऊपर अगर कोई बटन है कोई पैराग्राफ है कोई हेडिंग है उसे एक्सेस कैसे करना है उसके अंदर चेंजेज कैसे करने हैं तो एक्सेस कैसे करना है चेंज कैसे करने हैं दो चीजें हमने पढ़ ली अब हम बात करेंगे कि नया अगर न्यू चीज न्यू एलिमेंट अगर हमें ऐड करना है तो किस तरीके से ऐड कर सकते हैं तो न्यू एलिमेंट पहले तो ऐड करने से पहले हमें क्रिएट करना पड़ेगा न्यू एलिमेंट को ऐड करने का जो प्रोसेस होता है इट इज अ टू स्टेप प्रोसेस पहले तो आप उस एलिमेंट को क्रिएट करो पैराग्राफ ऐड करना है तो पैराग्राफ को क्रिएट करो बटन ऐड करना है बटन को क्रिएट करो फिर उसे फाइनली हम ऐड करते हैं तो क्रिएट करने के लिए हम लिखते हैं डॉक्यूमेंट ड क्रिएट एलिमेंट और फिर जो भी हमें आइटम जिस तरीके का हमें एलिमेंट चाहिए उसका टैग नेम लिख देते हैं तो लेट्स सपोज हमें एक बटन क्रिएट करना है तो उसके लिए हम एक नया एलिमेंट बना सकते हैं इसको कह सकते हैं न्यू बटन न्यू बीटीएन इ इक्वल टू डॉक्यूमेंट डॉट क्रिएट एलिमेंट और इसके अंदर हम टैग में पास कर देंगे अपना बटन तो इससे क्या होगा न्यू बीटीएम क्या बन जाएगा एक बटन बन जाएगा रिफ्रेश करेंगे कोई चेंज नहीं आएगा एस सच बटन प्रिंट होके नहीं आएगा पर इसे चाहे तो हम प्रिंट करवा सकते हैं अपने न्यू बीटीएन को ये मेरा क्या बटन हो गया रिफ्रेश किया तो मेरे पास बटन आ गया अभी बटन के अंदर इसकी काफी सारी प्रॉपर्टीज खाली होंगी जैसे न्यू बीटीएन के अंदर मैं देखूं मेरे इनर टेक्स्ट की क्या वैल्यू होगी इट इज कंपलीटली एमटी इसको चाहे तो हम कुछ इनर टेक्स्ट दे सकते हैं न्यू बीटीएन डॉट इनर टेक्स्ट की वैल्यू को कर देते हैं लेट्स मेक इट क्लिक मी इस तरीके का कुछ टेक्स्ट हम दे सकते हैं सेव कर लेते हैं एंड इस बार हम न्यू ट्री लाइक मॉडल था इस मॉडल के अंदर हमें उसे ऐड करना पड़ता है ऐड करने के लिए चार मेन मेथड्स होते हैं हमारे पास इनके अलावा भी होते हैं पर हम इंपॉर्टेंट वाले पढ़ रहे हैं सबसे पहला होता है अपेंड मेथड जिस भी एलिमेंट के हम लास्ट में इनसाइड एंड उसके लास्ट में अपेंड करना चाहते हैं तो उस नोड को हम पिक करते हैं और उसके लिए डॉट अपेंड करके अपने एलिमेंट को हम पास कर देते हैं इसका एग्जांपल आपको मैं दिखाती हूं फॉर एग्जांपल मेरे पास एक डिव है इस डिव के अंदर मैंने दिस इज अ डिव तो लिखा ही हुआ है साथ के साथ मैंने क्या किया इस डिव के अंदर मैंने ऑर्ड लिस्ट बना ली इसको कह देते हैं लिस्ट और इस लिस्ट के अंदर मेरे पास कई सारे आइटम्स हैं दिस इज माय आइटम वन इस तरीके से कॉपी किया ये आइटम टू आ गया ये आइटम थ्री आ गया सेव किया रिफ्रेश किया तो डिव की हम थोड़ी सी हाइट बढ़ा लेते हैं हाइट को वी कैन मेक इट 250 पिक्सेल सेव रिफ्रेश सो दिस इज़ माय डिव ये मेरा डिव है ये लिस्ट है इसके अंदर आइटम्स है सारी चीजें मेरे पास प्रिंट हो ग आ रही है अब हम चाहते हैं कि इसी डिव के अंदर यह जो मेरा जो बटन है वो आ जाए तो उसके लिए क्या करना पड़ेगा मुझे उसे डिव के अंदर अपेंड करना पड़ेगा डिव के अंदर अपेंड करने का मतलब है ऐड एट द एंड ऑफ द नोड तो मुझे ये डिसाइड करना पड़ेगा मेरा जो पेज है उसके ऊपर कहां मुझे अपने बटन को ऐड करना है मैं अपने बटन को ऐड करना चाहती हूं डिव के अंदर और डिव के अंदर भी कहां पर या तो स्टार्टिंग में ऐड कर सकते हैं लास्ट में ऐड कर सकते हैं वो भी मुझे ऐड करना है एंडिंग में तो उसके लिए सबसे पहले तो मैं डिव को एक्सेस करूंगी लेट डिव इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर हम अपने डिव को एक्सेस कर स सते हैं और डिव के अंदर हम अपेंड कर देंगे लास्ट में ऐड कर देंगे अपने न्यू बटन को तो इस तरीके से हम अपेंड करते हैं अपेंड कहां पे किया मतलब डिव के अंदर ही और लास्ट में ऐड कर दिया रिफ्रेश किया तो अब मेरा बटन मुझे दिखाई देना स्टार्ट हो गया ये मेरा बटन यहां पे आ गया कहां आया है डिव के अंदर आया है पर लास्ट में आया है उसी तरीके से मुझे डिव के अंदर ही चाहिए पर स्टार्टिंग में चाहिए तो उसके लिए हम प्रिपेंड को यूज करते हैं सो आई कैन डू ड प्रिपेंड सेव रिफ्रेश तो ये क्या हुआ बटन स्टार्टिंग में आ गया पर डिव के अंदर आ गया अगर मुझे अपने एलिमेंट से पहले मुझे वो नोड डिसाइड करनी पड़ेगी जिसके बेसिस पर हम अपने नए एलिमेंट को ऐड करते हैं तो वही नोड मेरे लिए अभी मेरा डिव है अगर मुझे किसी नोड से जस्ट पहले ऐड करना है उसके बाहर और जस्ट पहले तो उसके लिए हम बिफोर को यूज कर सकते हैं तो डिव डॉट बिफोर सेव किया रिफ्रेश किया तो डिव स्टार्ट होने से जस्ट पहले मेरा बटन आ गया और बाद में के लिए हम आफ्टर यूज़ करते हैं सेव किया रिफ्रेश किया तो बटन कहां आया डिव खत्म होने के जस्ट बाद मेरा बटन आ गया अगर मुझे इस पैराग्राफ के बाद उसे ऐड करना है इस पैराग्राफ के बाद अगर मैं ऐड करना चाहती हूं बटन को मैं यहां क्या करूंगी क्वेरी सिलेक्टर से अपने पैराग्राफ को एक्सेस करूंगी और पैराग्राफ के बाद मैं अपने बटन को ऐड करूंगी रिफ्रेश किया तो अब मेरा बटन पैराग्राफ के बाद ऐड होकर आ गया तो ये तो मैंने बटन को ऐड किया इसी तरीके से हम किसी हेडिंग को ऐड कर सकते हैं जैसे फॉर एग्जांपल मैंने एक नई हेडिंग एलिमेंट क्रिएट करते हैं लेट न्यू हेडिंग इज इक्वल टू डॉक्यूमेंट डॉट क्रिएट डॉट क्रिएट एलिमेंट और इसके अंदर मैंने एक h1 हेडिंग को क्रिएट किया h1 हेडिंग को कुछ इनर टेक्स्ट दे देते हैं इनर टेक्स्ट इज इक्वल टू या इनर एटीएमएल ही दे देते हैं डायरेक्टली इसे इटैलिक बना देते हैं इटैलिक इसके अंदर आएगा हाई आई एम न्यू इस तरीके से कुछ टेक्स्ट आ जाएगा तो ये न्यू हेडिंग बन गई अब इस हेडिंग को मुझे कहां पे ऐड करना है टॉप पे ऐड करना है पेज के मैं क्या कर सकती हूं आई कैन डायरेक्टली सिलेक्ट डॉक्यूमेंट ड क्वेरी सिलेक्टर से मैं डायरेक्टली अपनी बॉडी को सिलेक्ट कर सकती हूं और मुझे टॉप पे ऐड करना है तो टॉप पे ऐड करने का मतलब होगा बॉडी के अंदर ऐड करो पर टॉप पे ऐड करो स्टार्टिंग में ऐड करो तो मैं बॉडी डॉट प्रिपेंड कर सकती हूं तो आई कैन डू डॉट प्रिपेंड यहीं पे ही मेथड को ये मैंने सेलेक्ट कर लिया बॉडी टैग को इसको सेव करवाने की बजाय यहीं लिख दिया डॉट प्रिपेंड और यहां आपने न्यू हेडिंग को मैंने पास कर दिया सेव किया रिफ्रेश किया ओके h1 इज नॉट डिफाइंड ओके यहां पे मेरे पास मेरी न्यू हेडिंग आएगा सेव किया रिफ्रेश किया अब क्या आ गई मेरे पास मेरी नई हेडिंग आ गई जिसको मैंने ऑटोमेटिक पेज के अंदर ऐड कर दिया इस हेडिंग को ऐड करने के लिए मैंने अपने को क्रिएट किया उसके अंदर कुछ टेक्स्ट ऐड किया फिर बॉडी को सेलेक्ट किया और चेक किया कि बॉडी के अंदर कहां पे ऐड होनी चाहिए बॉडी को रेफरेंस लेके फिर उसे ऐड कर दिया तो इस तरीके से हम अपने नए एलिमेंट्स को ऐड कर सकते हैं इन आवर डॉम अपने ट्री के अंदर ऐड कर सकते हैं अब जैसे हम एलिमेंट्स को इंसर्ट करते हैं वैसे ही हम एलिमेंट्स को डिलीट भी कर सकते हैं किसी भी नोड को डिलीट करने के लिए हम लिखते हैं उस नोड का नाम डॉट रिमूव तो वो नोड ऑटोमेटिक डिलीट हो जाती है जैसे लेट्स सपोज मुझे इस पैराग्राफ को डिलीट करना है तो इस पैराग्राफ को डिलीट करने से पहले मुझे इसे रेफर करना पड़ेगा एक्सेस करना पड़ेगा डॉक्यूमेंट डॉट क्वेरी सिलेक्टर पहले पैराग्राफ को एक्सेस कर लेंगे और सिंपली हम कर देंगे पैरा डॉट रिमूव सेव रिफ्रेश मेरा पैराग्राफ गायब हो गया एलिमेंट्स के अंदर जाएंगे तो यहां भी बॉडी टैग के अंदर पैराग्राफ अब नहीं दिखेगा मुझे इस हेडिंग को गायब करना है आई कैन सिंपली डू न्यू हेडिंग डॉट रिमूव सेव रिफ्रेश गायब हो गया तो इस तरीके से किसी भी एलिमेंट को डिलीट एंड ऐड किया जा सकता है अपने पेज के अंदर अच्छा यहां मैं आपको छोटा सा एक होमवर्क प्रॉब्लम दूंगी छोटा सा प्रॉब्लम व्हाट यू हैव हैव टू डू इज इन दो मेथड्स के बारे में जाके पढ़ना है एमडीएन डॉक्यूमेंटेशन में एक होता है अपेंड चाइल्ड मैंने आपको बताया था अपेंड के लिए बहुत सारे मेथड होते हैं और वैसे ही होता है हमारे पास रिमूव चाइल्ड दोनों मेथड्स के बारे में आपको जाके पढ़ना है कि अपेंड चाइल्ड और रिमूव चाइल्ड का एग्जैक्ट यूसेज क्या होता है बाकी इन सारे मेथड्स को तो हम यूज़ कर ही सकते हैं अब नेक्स्ट हम सॉल्व करने वाले हैं अपने कुछ प्रैक्टिस क्वेश्चंस प्रैक्टिस क्वेश्चन में सबसे पहला क्वेश्चन हमें कह रहा है क्रिएट अ न्यू बटन एलिमेंट गिव इट अ टेक्स्ट क्लिक मी यह जो सारा का सारा काम है मुझे जावास्क्रिप्ट के अंदर करना है html5 हो गया स्क्रिप्ट ड जए को भी खाली कर लेते हैं रिफ्रेश किया एमटी हो गया अब शुरुआत से हमें यहां कोड लिखना है एक और चीज यहां पे पॉज करके एक बार खुद से चीजों को ट्राई करने की जरूर कोशिश करनी है क्योंकि खुद से एक बार ट्राई करेंगे अगर सॉल्व नहीं भी होता तो कोई बात नहीं अब सॉल्व ना होने के हम दो-चार तरीके सीख जाएंगे कि कौन-कौन सी अप्रोच तो वर्क नहीं करती या कहां पर हम ज्यादा स्टक होते हैं जहां पे ज्यादा स्टक फील होते हैं उस पार्ट को फिर जाके हमें रिवाइज कर लेना है सबसे पहले हमें क्रिएट करना है एक न्यू बटन एलिमेंट तो किसी भी एलिमेंट को क्रिएट करने के लिए इसे न्यू बटन कह देते हैं हम न्यू बीटीएन क्रिएट करने के लिए हम लिखेंगे डॉक्यूमेंट डॉट क्रिएट एलिमेंट और इसे हम बनाएंगे ऑफ टैग बटन इसके अंदर फिर मुझे एक टेक्स्ट लिखना है क्लिक मी तो न्यू बीटी एड इनर टेक्स्ट इज इक्वल टू क्लिक मी इस तरीके का कुछ टेक्स्ट लिख दिया हमने फिर हमें क्या करना है इसे एक बैकग्राउंड कलर देना है रेड एंड टेक्स्ट कलर देना है वाइट जब भी स्टाइल देना हो हमने ऑलरेडी पढ़ रखा है स्टाइल कैसे देना होता है हमें जिस भी नोड के अंदर स्टाइल देना है हम लिखते हैं नोड डॉट स्टाइल डॉट कलर या डॉट बैकग्राउंड कलर जिस भी प्रॉपर्टी को हमें चेंज करना है तो आई कैन सिंपली राइट न्यू बीटीएन न्यू बीटीएन क्या है मेरा नोड है डॉट स्टाइल ड कलर कलर हमें देना है इसे इक्वल टू वाइट एंड बैकग्राउंड कलर देना है रेड तो न्यू बटन डॉट स्टाइल डट बैकग्राउंड कलर इज इक्वल टू रेड यह हमने दे दिया इतना पार्ट कर दिया नेक्स्ट हमें इंसर्ट करना है द बटन एज द फर्स्ट एलिमेंट इनसाइड द बॉडी टैग बॉडी टैग के अंदर फर्स्ट एलिमेंट की तरह अटैच करना है तो पहले तो बॉडी टैग को सिलेक्ट कर लेते हैं डॉट क्वेरी सिलेक्टर बॉडी और बॉडी के अंदर फर्स्ट एलिमेंट की तरह सिलेक्ट करना है तो मतलब हमें पता है बॉडी के अंदर आना चाहिए तो या तो अपेंड होगा या प्रिपेंड होगा और कहां पे आना चाहिए स्टार्टिंग में आना चाहिए तो हम इसे प्रिपेंड कर रहे होंगे प्रिपेंड प्री यानी पहले तो प्रिपेंड और यहां ऐड कर देंगे अपने न्यू बटन को इसे सेव कर लेते हैं एंड यहां जैसे ही रिफ्रेश करेंगे सबसे पहले हमारे पास एक रेड कलर का क्लिक मी नाम का बटन आ जाएगा ये जो बटन है ये हमारे एलिमेंट्स के अंदर भी हमें दिखाई देगा यहां पर तो डॉट स्टाइल से जितनी भी स्टाइलिंग होती है ये हमारी स्टाइल सीएए के अंदर ऐड नहीं होती ये इनलाइन स्टाइलिंग होती है जो उसी टैग के अंदर हमें दिखाई देती है तो एलिमेंट्स में जो भी स्टाइलिंग हम हमने ऐड करी जावास्क्रिप्ट से वो सारी की सारी यहां पर मुझे दिखाई दे रही है सो दिस इज हाउ वी क्रिएट एन एलिमेंट वी गिव इट सम टेक्स्ट वी गिव इट सम स्टाइलिंग एंड वी ड इट टू द डॉक्यूमेंट सेकंड क्वेश्चन की तरफ आ जाते हैं सेकंड क्वेश्चन में हम कुछ नया सीखेंगे क्लास के लेक्चर से आगे बढ़ के कुछ नया सीखेंगे तो थोड़ा सा टफ लग सकता है सबसे पहले क्रिएट अ पैराग्राफ टैग इन द एचटीएमएल एंड गिव इट अ क्लास एंड सम स्टाइलिंग तो एटीएमएल के अंदर एक पैराग्राफ टैग क्रिएट कर लेते हैं पैराग्राफ इसको कह देते हैं आई एम अ पैराग्राफ तो ये मेरा पैराग्राफ आ गया रिफ्रेश करेंगे दिखाई दे रहा है माय पैराग्राफ इस पैराग्राफ को हमें क्या करना है क्लास देनी है लेट्स गिव इट अ क्लास वी कैन गिव इट अ क्लास ऑफ माय क्लास दे देते हैं इसे नाम माय क्लास वेरी सिंपल नेम इट्स नॉट अ वेरी गुड नेम फॉर अ पैराग्राफ या इसे कंटेंट दे देते हैं कंटेंट थोड़ा सा लॉजिकल नाम होगा कंटेंट नाम दे देते हैं इसे क्लास को एंड फिर क्या करना है हमें इसे कुछ स्टाइलिंग देनी है तो ये अपनी पुरानी कोई स्टाइलिंग थी इसे हम हटा लेते हैं डॉट कंटेट इस तरीके से हम स्टाइलिंग देते हैं स्टाइल ड सीएए में ऑन द बेसिस ऑफ क्लास नेम तो यहां पैराग्राफ को एक कलर दे देते हैं लेट्स गिव इट अ कलर ऑफ रेड रेड किया रिफ्रेश कर लिया ये रेड कलर आ गया मेरे पैराग्राफ का तो ये हमने इसे कुछ स्टाइलिंग दे दी नेक्स्ट हमें क्या करना है क्रिएट अ न्यू क्लास इन सीएसएस एंड ट्राई टू अपेंड दिस क्लास टू द पैराग्राफ एलिमेंट मतलब मुझे सीएसएस के अंदर एक नई क्लास क्रिएट करनी है और फिर जावास्क्रिप्ट को यूज करके उस क्लास को मुझे इस पैराग्राफ एलिमेंट के अंदर ऐड करना है और अपेंड करने का मतलब है पुरानी क्लास तो रहनी ही चाहिए नई क्लास भी आ जानी चाहिए तो पहले तो सीएसएस के अंदर एक नई क्लास क्रिएट कर लेते हैं इसे कह देते हैं डॉट न्यू क्लास न्यू क्लास के अंदर नई स्टाइलिंग दे देते हैं बैकग्राउंड कलर दे देते हैं लेट्स सपोज वी गेट अ बैकग्राउंड कलर ऑफ येलो अ वेरी बैड कॉमिनेशन लेट्स गिव ग्रीन रेड एंड ग्रीन इज द कलर ऑफ क्रिसमस तो बैकग्राउंड कलर इसको दे देते हैं ग्रीन के इक्वल न्यू क्लास अब ये बैकग्राउंड कलर एज सच कहीं पे अप्लाई तो हो नहीं रहा बस क्लास बना दिया हमने सीएसएस के अंदर अब मुझे स्क्रिप्ट . जए से क्या करना है सबसे पहले तो यहां नीचे आ सकते हैं क्वेश्चन टू मुझे इस पैराग्राफ को एक्सेस करना है और इसके अंदर क्लास के अंदर कंटेंट क्लास तो है ही एक और क्लास ऐड करनी है तो पहले तो पैराग्राफ को एक्सेस कर लेते हैं लेट पैरा इज इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर p अब देखा जाए तो क्लास को ऐड करने के लिए हम क्या कर सकते हैं किसी भी टैग की अगर मुझे क्लास एक्सेस करनी है क्लास क्या होता है क्लास हमारे पास एक ट्रिब्यूट होता है तो एट्रिल को एक्सेस करने के लिए हम सिंपली सेव कर लेते हैं एक बार रिफ्रेश करते हैं पैरा को प्रिंट करवाऊं मेरा पैराग्राफ आ जाएगा और हम कर सकते हैं डॉट गेट एटिबल डॉट गेट एटिबल और मुझे अगर क्लास की वैल्यू चाहिए पैराग्राफ के मेरे पास आ जाएगी कि इसकी क्लास की वैल्यू कंटेंट है हम ऐसे ही सेट एट्रिल भी कर सकते हैं आई कैन डू सेट एट्रिशन और क्लास का नाम मैं चेंज करवा सकती हूं टू न्यू कंटेंट या न्यू क्लास न्यू क्लास था हमारी क्लास का नाम क्लास का नाम मैंने चेंज कर दिया जैसे ही एंटर किया वैसे ही क्या हुआ वैसे ही वो क्लास अप्लाई हो गई इस एलिमेंट के ऊपर और न्यू क्लास के पास क्योंकि बैकग्राउंड कलर ग्रीन था वो ग्रीन कलर अप्लाई हो गया पर एक चीज आप नोटिस करोगे टेक्स्ट कलर वापस से ब्लैक हो गया तो पुरानी जो क्लास थी वो हट गई पुरानी क्लास जैसे ही हट जाती है उसकी पुरानी स्टाइलिंग भी हट जाती है पर मैं नहीं चाहती कि मेरी पुरानी स्टाइलिंग हटे मैं चाहती हूं दो क्लासेस मिले इस एलिमेंट को तो इसीलिए मेरी जो सेट एट्रिल वाली प्रॉपर्टी है वो तो क्लास को कंप्लीट ओवरराइट कर देती है कंप्लीट चेंज कर देती है तो यहां पर क्लास का नाम ऐड करने के लिए अपेंड करने के लिए हम कभी भी सेट एट्रिल को यूज नहीं करते उसके लिए वी यूज समथिंग कॉल्ड क्लास लिस्ट तो यही लिखा हुआ है क्वेश्चन के अंदर डिड यू नोटिस हाउ यू ओवरराइट द क्लास नेम व्हेन यू ऐड अ न्यू वन तो जब नई क्लास ऐड करते हैं पुरानी वाली कंप्लीट चेंज हो जाती है सॉल्व दिस प्रॉब्लम यूजिंग क्लास लिस्ट वी यूज समथिंग कॉल्ड क्लास लिस्ट और यहां मैं आपको ये भी दिखा रही हूं कि कभी-कभार मान लो हमारे पास ऐसी प्रॉब्लम आ जाती है जिसको मुझे पता नहीं कैसे सॉल्व करना है जिसके बारे में कभी पढ़ा नहीं तो उसको सिंपली हम ग करके सॉल्व कर सकते हैं मैं क्या करूंगी मुझे नहीं पता क्लास लिस्ट क्या है तो आई कैन सिंपली सर्च फॉर क्लास लिस्ट इन जावास्क्रिप्ट और बेस्ट तरीका है एमडीएन के ऊपर जाओ नहीं तो यहां दिखाई भी दे रहा है क्लास लिस्ट प्रॉपर्टी इन एलिमेंट तो क्लास लिस्ट प्रॉपर्टी क्या होती है इट इज अ कलेक्शन ऑफ क्लास एटिबल ऑफ द एलिमेंट क्लास लिस्ट के अंदर हमारे पास सारे एलिमेंट के क्लासेस की लिस्ट आ जाती है तो अपने कोड के अंदर हमारा जो पैरा है पैराग्राफ के लिए हम उसकी क्लास लिस्ट को प्रिंट करवा सकते हैं पैराग्राफ के लिए क्लास लिस्ट प्रिंट होके आ जाएगी क्लास लिस्ट के अंदर लेंथ है वन और कितनी क्लासेस हैं एक ही क्लास है इंडेक्स नंबर जरो पे इस क्लास का नाम है कंटेंट तो इस तरीके से क्लास लिस्ट को एक्सेस कर लिया यहां पे मुझे दिखाया भी हुआ है अब क्लास लिस्ट के अंदर नई क्लास ऐड करने के लिए हम लिखते हैं क्लासलिस्ट डट ऐड और फिर अपनी नई क्लास का नाम रिमूव करने के लिए लिखते हैं क्लासलिस्ट ड रिमूव यहां तो क्या कर रहे हैं डेव के अंदर नई क्लास लिस्ट ऐड करने की कोशिश कर रहे हैं दिस इज द कोड एंड यहां पे रिमूव करने की कोशिश कर रहे हैं तो इसी तरीके से क्लास लिस्ट के अलग-अलग मेथड्स होते हैं ऐड और रिमूव सबसे इंपोर्टेंट होते हैं अब जैसे ही रिफ्रेश कर लेते हैं पैराग्राफ के अंदर व्हाट आई कैन डू इज अपनी क्लास लिस्ट के अंदर क्लास लिस्ट डॉट ऐड मेथड हम कॉल कर सकते हैं और इसके अंदर जैसे ही हम ऐड कर देंगे न्यू क्लास एंटर किया वैसे ही हमारी नई क्लास ऐड हो गई तो हमारा बैकग्राउंड कलर ग्रीन हो गया साथ के साथ पुरानी क्लास भी है तो हमारा जो कलर है फंट का वो तो रेड का रेड रहा अब जैसे ही हम पैराग्राफ डॉ क्लास को प्रिंट करेंगे क्लास लिस्ट को इस बार हमारे पास लेंथ आएगी टू और हमें पता चल रहा है पैराग्राफ के अंदर दो क्लासेस हैं एक क्लास है कंटेंट एक क्लास है न्यू क्लास एलिमेंट्स में जाएंगे तो ये दोनों क्लासेस मुझे दिखाई देंगी पैराग्राफ में एक है मेरे पास कंटेंट एक है मेरे पास न्यू क्लास और इनकी स्टाइलिंग भी हम दे सकते हैं न्यू क्लास मुझे बैकग्राउंड कलर ग्रीन दे रही है और यहां पर ट क्लास मुझे फॉन्ट कलर रेड दे रही है तो इस तरीके से हम अपनी क्लासेस को ऐड कर सकते हैं अपेंड कर सकते हैं चाहे तो रिमूव भी कर सकते हैं मुझे अगर न्यू क्लास को रिमूव करना है आई कैन सिंपली राइट रिमूव न्यू क्लास एंटर किया तो मेरी न्यू क्लास रिमूव हो गई तो उसकी स्टाइलिंग भी रिमूव हो गई एंड जनरली जब भी एलिमेंट्स को हमें मल्टीपल तरीके से डायनेमिक स्टाइलिंग देनी होती है इसी तरीके से हम क्लासेस की फॉर्म में उसे देते हैं तो आई होप कि डॉम के अंदर और नई-नई चीजें पढ़ने में हमें मजा आया होगा एंड नेक्स्ट चैप्टर के अंदर हम स्टार्ट करेंगे विद इवेंट्स बेसिकली बटन के क्लिक होने से अगर हम चाहते हैं कुछ प्रिंट होके आ जाए हमारी स्क्रीन पे हमारा कलर चेंज हो जाए या फॉर्म सबमिट करने से कुछ हो जाए तो इस तरीके के कामों के लिए हम अपने इवेंट्स को यूज़ करते हैं अब नेक्स्ट हम बात करने वाले हैं जावास्क्रिप्ट के अंदर इवेंट्स के बारे में इवेंट्स हमारे कोड के अंदर कुछ इंटरेस्टिंग चेंजेज को हम कहते हैं फॉर एग्जांपल हमारे पास कोई बटन है अगर उस बटन को हमने क्लिक कर दिया तो वो एक इवेंट होगा अगर उस बटन को हमने डबल क्लिक कर दिया वो भी एक इवेंट होगा अगर हमारे पास कोई फॉर्म है फॉर एग्जांपल हम रजिस्टर करते हैं किसी भी वेबसाइट के ऊपर हमें अपनी ईमेल डालनी पड़ती है पासवर्ड डालना पड़ता है एंड उसके बाद फाइनली जब हम साइन अप या रजिस्टर के ऊपर क्लिक करते हैं व अपने आप में एक इवेंट होता है यानी किसी फॉर्म का सबमिट होना एक इवेंट के अकर होने के बाद हम कुछ भी काम करवा सकते हैं जैसे हम किसी बटन को क्लिक करते हैं तो हो सकता है हमारी स्क्रीन के ऊपर हमारे पास कुछ प्रिंट होकर आ जाए या कुछ और काम हो जाए तो इस तरीके के इंटरेस्टिंग इवेंट्स के साथ जब हम डील करते हैं तो उसे हम इवेंट हैंडलिंग कहते हैं और हमारा जो डॉम होता है डॉम की हर एक नोड कुछ ना कुछ तरीके का इवेंट प्रोड्यूस कर सकती है सो व्हेन वी टॉक अबाउट इवेंट्स द चेंज इन द स्टेट ऑफ एन ऑब्जेक्ट इज नोन एज एन इवेंट वो ऑब्जेक्ट हमारे लिए कोई बटन भी हो सकता है बटन को अगर हम क्लिक करते हैं तो एक तरीके से हम उसकी स्टेट को चेंज कर रहे हैं सो इवेंट्स आर फाय टू नोटिफाई कोड ऑफ इंटरेस्टिंग चेंजेज दैट मे अफेक्ट कोड एग्जीक्यूशन यानी जब भी कोई इवेंट होता है तो जनरली हम क्या करते हैं हम कुछ चेंजेज लेके आते हैं कोड में फॉर एग्जांपल हमने किसी फॉर्म को सबमिट कर दिया साइन अप करने के लिए तो क्या होगा हमारे यूजर हमारे डेटाबेस के अंदर जाके रजिस्टर हो जाएगा कि एक नया यूजर है जिसने अपनी इंफॉर्मेशन सबमिट कर दी तो इवेंट्स को जनरली हम यूज़ करते हैं किसी काम को ट्रिगर करवाने के लिए अब जब भी हम इवेंट्स की बात करते हैं हमारे पास बहुत तरीके के इवेंट्स होते हैं ये कुछ पॉपुलर तरीके के इवेंट्स है जैसे एक माउस इवेंट हो गया माउस इवेंट क्या होता है किसी भी माउस पर या अपने ट्रैक पैड पर जब हम क्लिक करते हैं वो अपने आप में एक इवेंट है जब हम डबल क्लिक करते हैं वो भी अपने आप में एक इवेंट है हम कीबोर्ड के ऊपर किसी की को प्रेस करते हैं वो भी अपने आप में एक इवेंट है की को डाउन वर्ड्स की तरफ प्रेस करना हमारा की डाउन होता है जैसे ही की को हम छोड़ देते हैं प्रेस करके वो की अप हो जाता है जब भी किसी फॉर्म को हम सबमिट करते हैं वो अपने आप में एक इवेंट हो जाता है जब भी हम कुछ प्रिंट करवाते हैं अपने सिस्टम से वो भी अपने आप में एक इवेंट हो जाता है तो हमारे पास बहुत सारे तरीके के इवेंट्स होते हैं जावास्क्रिप्ट में इनफैक्ट अगर हमें सारे तरीके के इवेंट्स देखने हैं वी कैन सर्च फॉर इवेंट्स एमडीए इवेंट रेफरेंस वाले इस पेज पर हम जा सकते हैं और यहां हम दिखाई दे रहा है इवेंट्स आर फायरर्ड टू नोटिफाई सेम डेफिनेशन दीज कैन अराइज फ्रॉम यूजर इंटरेक्शंस यानी ये जो इवेंट्स है अगर यूजर हमारी वेबसाइट के साथ इंटरेक्ट करता है तो इवेंट्स क्रिएट हो सकते हैं जैसे अगर हम अपनी विंडो को रिसाइट करते हैं फुल स्क्रीन करते हैं मिनिमाइज करते हैं वो अपने आप में एक इवेंट है पर इवेंट्स यूजर के अलावा एनवायरमेंट से भी जनरेट हो सकते हैं अगर लेट्स सपोज हमारे सिस्टम के अंदर बैटरी कम हो जाती है तो उसके बाद लेट्स सपोज 10 पर से कम अगर बैटरी हो जाती है तो हो सकता है सिस्टम कोई वार्निंग दे तो वो क्या हो गया वो एक इवेंट हो गया लो बैटरी खाना तो इस तरीके से बहुत सारे इवेंट्स होते हैं एंड वी हैव अ लॉट ऑफ टाइप्स हमारे पास एनिमेशन इवेंट्स होते हैं क्लिपबोर्ड इवेंट्स होते हैं डेटाबेस इवेंट्स होते हैं डॉम म्यूटेशन इवेंट्स होते हैं फोकस इवेंट्स होते हैं फॉर्म इवेंट्स होते हैं एंड सबसे ज्यादा जो हम यूज़ करते हैं जनरली वो हमारे कीबोर्ड इवेंट्स होते हैं एंड साथ के साथ हमारे माउस इवेंट्स होते हैं तो अब हम एक एग्जांपल देखने वाले हैं कि जब हम इवेंट्स की बात कर रहे हैं तो एगजैक्टली हम क्या कहना चाह रहे हैं हम क्या करेंगे अपना index.htm वाला पेज खोलेंगे और हमने बॉयलर प्लेट कोड लिख रखा है हमने एक style.css फाइल है जिसके साथ कनेक्ट किया हुआ है अपने कोड को अभी हमारी जो style.css है कंप्लीट एमटी है एंड उसके साथ में हमारे पास स्क्रिप्ट जए है व्हिच इज़ आल्सो कंपलीटली एमटी इसको भी हमने कनेक्ट कर रखा है अपने कोड के साथ हम क्या करेंगे html.com बटन वाज क्लिक्ड तो बेसिकली ऑन क्लिक एट्रिल क्लिक हमारा एक इवेंट होता है कि जब भी बटन को क्लिक किया जाए तो क्या काम होना चाहिए तो स्क्रीन के ऊपर ये प्रिंट होके आना चाहिए अब एक बार रिफ्रेश करेंगे कोड को क्लिक मी जैसे भी मैंने क्लिक किया बटन के ऊपर तो क्या हुआ मेरे पास कुछ प्रिंट होकर आया बटन वाज क्लिक्ड जैसे ही मैंने दोबारा क्लिक किया ये दोबारा से प्रिंट होकर आया जैसे ही मैंने थर्ड टाइम क्लिक किया यहां पर काउंट इंक्रीज हो रहा है टूथ तो जितने भी अब बटन के क्लिक हैं इनको हम ट्रैक कर सकते हैं हम चाहे तो कुछ और काम भी कर सकते हैं फॉर एग्जांपल मैंने कुछ प्रिंट करवा दिया उसके बाद आई कैन आल्सो क्रिएट एन अलर्ट सेइंग हेलो यहां लिख देंगे हेलो एक चीज याद रखनी है जब हमारे पास बाहर की तरफ डबल कोड्स होते हैं तो अंदर की तरफ कोड्स लिखने के लिए यानी स्ट्रिंग्स लिखने के लिए हम सिंगल कोड्स को यूज़ करते हैं तो यहां मुझे सिंगल कोड्स को यूज़ करना है सेव कर लिया रिफ्रेश किया अब मैंने बटन को क्लिक किया तो मेरे पास कुछ प्रिंट होकर भी आया और मेरे पास मेरा अलर्ट भी क्रिएट होकर आया इसको कर देते हैं ओके तो इस तरीके से किसी बटन के क्लिक होने से क्या होता है एक इवेंट जनरेट होता है और उस इवेंट के जनरेट होते ही हम कुछ काम करवा सकते हैं और ये जो काम हम करवा रहे हैं इसी को हम कहते हैं प्रोग्रामिंग के अंदर इवेंट हैंडलिंग अब लेट्स सपोज मुझे एक और बटन क्रिएट करना है यहां पर आकर इसे क्रिएट कर लेते हैं और इस बटन के क्लिक होते ही इसे कह देते हैं क्लिक मी टू टाइम्स दिस इज अ बटन व्हिच सेज क्लिक मी टू टाइम्स ओके वी विल मेक इट टू अब यहां पर ऑन क्लिक की जगह हम क्या करने वाले हैं ऑन क्लिक की जगह हम ऑन डीबीएल क्लिक करने वाले हैं ऑन डीबीएल क्लिक का मतलब होता है डबल क्लिक करना जब भी हमें कोई इवेंट के बारे में बताना होता है कि इस इवेंट पर मुझे ये काम करवाना है यहां हम क्या कर रहे थे कह रहे थे क्लिक करने पर मुझे ये काम करवाना है तो हम क्लिक को ऑन के साथ ऐड कर देते हैं अपेंड कर देते हैं वैसे ही अगर हमें डबल क्लिक पर काम करवाना है तो उसके लिए हमारे पास डीबीएल क्लिक होता है तो यहां पर हम प्रिंट करवा सकते हैं बटन वाज क्लिक्ड टू टाइम्स सेव कर लिया रिफ्रेश किया अब यहां पर जैसे ही क्लिक मी को हम करेंगे तो हमारे पास आ गया बटन वाज क्लिक वेरी नॉर्मल अब मैं क्लिक मी टू टाइम्स को क्लिक करूंगी तो मेरे पास कुछ भी प्रिंट नहीं होकर आया पर जैसे ही मैंने इस पर डबल क्लिक किया वैसे ही मेरे पास क्या प्रिंट होकर आया बटन वाज क्लिक्ड टू टाइम्स तो ये जो है मैंने डबल क्लिक इवेंट को हैंडल करने के लिए अपना कुछ-कुछ कोड लिख दिया जो मेरे डबल क्लिक इवेंट को हैंडल कर रहा है ऐसे ही हम कुछ और काम भी कर सकते हैं फॉर एग्जांपल मैंने एक डिव क्रिएट किया इस डिव को कह देते हैं दिस इज अ बॉक्स एंड वी कैन ऐड सम स्टाइलिंग टू दिस डिव स्टाइल ड सीएए के अंदर जाके अपने डिव के लिए हम कुछ हाइट सेट कर सकते हैं 100 पिक्सल्स हम कुछ विड्थ सेट कर सकते हैं 100 पिक्सल्स हम इसे एक कलर दे सकते हैं और प्रोबेबली सम बैकग्राउंड कलर लेट्स गिव इट डॉजर ब्लू एंड इसे कलर दे देते हैं वाइट एंड इसे हम छोटा सा बॉर्डर दे देते हैं वन पिक्सल सॉलिड ब्लैक सेे कर लेते हैं सेव एंड रिफ्रेश तो ये हमारे पास हमारा बॉक्स आ गया अब इस बॉक्स पर मुझे अगर ट्रैक करना है कि मेरा ये जो माउस है ये माउस का पॉइंटर है जैसे इसके ऊपर हर करता है मुझे कुछ प्रिंट करवाना है तो उसके लिए इस डिव के ऊपर हम एक इवेंट को ट्रैक कर सकते हैं इनफैक्ट हमें कौन सा इवेंट यूज करना है ये भी हम सर्च कर सकते हैं अपने इवेंट रेफरेंस वाले पेज पर जाके मुझे क्या करना है अपने माउस के लिए कोई इवेंट देखना है तो आई कैन गो टू माउस एलिमेंट्स एंड यहां पर हमारे पास बहुत सारे इवेंट्स होते हैं माउस के लिए हमारे पास क्लिक इवेंट होता है हमारे पास डबल क्लिक इवेंट होता है इसके अलावा हमारे पास होता है देयर इज समथिंग कॉल्ड माउस ओवर माउस ओवर का मतलब है जब हम किसी भी एलिमेंट के ऊपर हर करते हैं तो इस इवेंट को हम यूज़ करने वाले हैं इसे यूज़ करने के लिए आई विल राइट ऑन माउस ओवर इज इक्वल टू और जैसे ही माउस ओवर हो वैसे ही हमें कसोल डलॉग यानी प्रिंट करना है यू आर ऑन या इनसाइड डिफ सेव कर लिया यहां वापस आ गए रिफ्रेश किया जैसे ही अब ये जो मेरा पॉइंटर है इसे मैं डिव के अंदर लेकर जाऊंगी तो क्या होगा सिंपली प्रिंट होके आ रहा है यू आर इनसाइड डिव बाहर आ गए तो एज सच कुछ नहीं हुआ पर दोबारा से इसको अंदर की तरफ लेके जाएंगे यू आर इनसाइड तो ये क्या हो रहा है ये एक चेंज हो रहा है जिसको ट्रैक किया जा रहा है मेरे कोड के अंदर और इन्हीं को हम अपने इवेंट्स कहते हैं तो हमारे पास मल्टीपल तरीके के इवेंट्स होते हैं जिनको हम स्टडी कर सकते हैं और ये जो इवेंट्स के टाइप हैं डिफरेंट डिफरेंट टाइप्स ऑफ़ इवेंट्स हैं इनको हम चेक कर सकते हैं बाय गोइंग टू दिस पेज सो दिस इज द एमडीएन डॉक्यूमेंटेशन जिस पेज पर हम जा सकते हैं और मल्टीपल इवेंट्स के बारे में पढ़ सकते हैं अब यहां पर ये जो काम हमने किया है कि जैसे इवेंट हो ये काम हो जाए जैसे ही डबल क्लिक किया जाए ये प्रिंट होके आ जाए जैसे ही ऑन माउस ओवर हो जाए ये प्रिंट होकर आ जाए इसे कहते हैं हम इनलाइन इवेंट हैंडलिंग इनलाइन इवेंट हैंडलिंग इवेंट हैंडलिंग का मतलब होता है इवेंट्स को हैंडल करना यानी जब भी कोई इवेंट अकर करे उसके बेसिस पे कुछ काम करवाना और इनलाइन का मतलब होता है कि हम एचटीएमएल के टैग के अंदर ही अपने इवेंट्स को हैंडल कर रहे हैं अंदर ही हम अपना काम लिख रहे हैं बट दिस इज नॉट रियली अ गुड वे ऑफ हैंडलिंग इवेंट्स क्यों क्योंकि इससे हमारा एचटीएमएल कोड बहुत ज्यादा बल्की हो जाता है कभी-कभार हो सकता है किसी इवेंट के अकर करने पे मुझे चार-पांच लाइंस ऑफ़ कोड लिखनी हो तो वो तो html.erb हो सकता है और उसके ऊपर हम डॉट इवेंट यानी अगर बटन है तो हम हमें ऑन डबल क्लिक यूज करना है तो हम ऑन डीबीएल क्लिक यूज कर सकते हैं इस तरीके से हम इस तरीके से अपने इवेंट को एक्सेस करते हैं और उसके लिए एक फंक्शन लिख देते हैं और फंक्शन के अंदर काम लिखा होगा यानी जिस भी तरीके से हम अपने इवेंट को हैंडल करना चाहते हैं इसका एक एग्जांपल देखते हैं ये जो ऑन क्लिक है बटन वाला इसे यहां से हटा देते हैं लेट्स रिमूव एंड अब रिफ्रेश करेंगे इसके ऊपर क्लिक करेंगे कोई काम नहीं होगा तो स्क्रिप्ट जए के अंदर आ जाते हैं सबसे पहले तो इस फर्स्ट बटन को हम एक्सेस करते हैं इसे हम चाहे तो एक आईडी दे सकते हैं बीटी एव एंड लेट्स एक्सेस आवर बीटीएन वन डॉक्यूमेंट डॉट क्वेरी सिलेक्टर हम एक्सेस कर सकते हैं विद द आईडी बीटीएन व अब बीटीएन व के ऊपर अपने इवेंट को एक्सेस करने के लिए हम लिखते हैं bt1 ऑन क्लिक एंड उसके बाद राइट साइड में हम कोई भी अपना फंक्शन लिख सकते हैं और फंक्शंस को लिखने का बेटर तरीका होता है हमारे पास हमारे एरो फंक्शंस तो ये मेरा प्रॉपर एक फंक्शन आ जाएगा और इस फंक्शन के अंदर हम कोई भी काम करवा सकते हैं फॉर एग्जांपल यहां हम लिख सकते हैं बीटी एव वाज क्लिक्ड उसके बाद लेट्स सपोज हमने कोई वेरिएबल बना दिया लेट a इ 25 हम फिर a को कर सकते हैं प्लस प्लस एंड फिर प्रिंट करवा सकते हैं अपने a को तो हमारे पास 26 प्रिंट होके आएगा तो इस तरीके से बहुत सारे रैंडम काम है अभी तो मैंने ये रैंडम एक वेरिएबल क्रिएट किया उसके साथ कुछ ऑपरेशन किए पर हम काफी सारे यूज़फुल कामों को भी इसी तरीके से अपने ऑनक्लिक फंक्शन के अंदर लिखकर भेज सकते हैं तो ये हो गया जावास्क्रिप्ट के थ्रू अपने इवेंट को हैंडल करना अब यहां index.htm के अंदर जाके इस बटन का नाम हम बीटीएन व भी कर सकते हैं सेव किया रिफ्रेश किया जैसे ही बीटीएन वन के ऊपर क्लिक करेंगे क्या हुआ हमारा काम हमारे लिए आ गया बीटीएन व वास क्लिक्ड और फिर a की वैल्यू हमारे लिए प्रिंट होकर आ गई तो इस तरीके से अपने इवेंट्स को हम स्क्रिप . जए के अंदर भी हैंडल कर सकते हैं ये सेकंड बटन यहां से हटा देते हैं अपना डिव वाला जो इवेंट है इसे भी यहीं पर हैंडल करते हैं यानी जावास्क्रिप्ट के अंदर दिस इज अ बॉक्स तो लेट बॉक्स इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर एंड यहां हम सेलेक्ट कर लेंगे अपने डिव को तो अपने बॉक्स के लिए या इसे डिव भी कह सकते हैं अपने डिव के लिए अगर मुझे ऑन माउस ओवर वाला इवेंट हैंडल करना है इज इक्वल टू यहां पर हम कंसोल डॉ लॉग करवा सकते हैं यू आर इनसाइड डिव इस तरीके की कुछ लाइन इसे कर लेते हैं सेव सो यह हमने अपने डिव के लिए इवेंट को हैंडल कर दिया अब रिफ्रेश करेंगे तो हमारे पास एक डिव है जिसके अंदर जैसे ही हम हर कर रहे हैं हमारा क्या हो रहा है हमारा काउंट इंक्रीज हो रहा है सो दिस इज हाउ वी आर हैंडलिंग द सेकंड इवेंट अब दो इंपॉर्टेंट चीजें हैं जो हमें पता होनी चाहिए इस तरीके से अपने इवेंट को हैंडल करने के बारे में सबसे पहला जब भी हम इवेंट को दो जगह हैंडल कर रहे होते हैं फॉर एग्जांपल मैंने अपने इवेंट को यहां भी हैंडल किया है इनलाइन तरीके से यानी यहां मैंने लिख दिया ऑन क्लिक console.log हेलो इस तरीके से मैंने हेलो लिख दिया और मैंने अपने इवेंट को स्क्रिप्ट . जए में यहां पर भी हैंडल किया तो दोनों में से कौन सा कोड रन करेगा रिफ्रेश करेंगे अगर और बटन को क्लिक करेंगे तो मुझे पता चला मेरा जावास्क्रिप्ट वाला कोड रन करेगा तो यहां से फर्स्ट अंडरस्टैंडिंग फर्स्ट इंपॉर्टेंट पॉइंट जो हमारे पास आता है कि अगर हमने इनलाइन तरीके से हैंडल किया हुआ है अप इवेंट को और हमने जावास्क्रिप्ट के अंदर हैंडल किया हुआ है अपने इवेंट को तो उनमें से प्रायोरिटी जावास्क्रिप्ट वाले कोड की होती है इनलाइन हैंडलिंग की नहीं होती सेकंड चीज इज दैट कि एक बार हमने अगर किसी इवेंट को हैंडल कर दिया जैसे यहां पर हमने अपने ऑन क्लिक इवेंट को हैंडल कर दिया तो दोबारा से हम अपने ऑनक्लिक इवेंट को हैंडल नहीं कर सकते वरना क्या होगा दोबारा अगर हमने सेम चीज लिखी तो पुराने वाला कोड ओवरराइट हो जाएगा फॉर एग्जांपल आई राइट हियर कसोल डलॉग यहां कह देते हैं दिस इज माय हैंडलर वन एंड दिस इज माय हैंडलर टू हैंडलर वन की जगह इसे हैंडलर टू कर लेते हैं सेव किया एंड रिफ्रेश किया अब जैसे ही बटन को क्लिक करेंगे हमारे पास हैंडलर टू प्रिंट होकर आ जाएगा तो जब भी हम इस तरीके से मल्टीपल हैंडलर्स डिफाइन करते हैं इस फॉर्मेट के अंदर तो हमारे पास जो लास्ट वाला हैंडलर होता है हैंडलर यानी ये फंक्शन जो रन कर रहा है किसी भी इवेंट के फायर होने के बाद तो ये जो हैंडलर है ये पुराने वाले को ओवरराइड कर सकता है तो जब भी हम इस तरीके से अपने नोड डॉट इवेंट को लिखते हैं और फिर उसे हैंडल करते हैं तो इस तरीके से हम एक ही अपनी इवेंट हैंडलर के अंदर सारा का सारा काम डिफाइन कर सकते हैं देयर इज वन मोर इंटरेस्टिंग थिंग अबाउट इवेंट्स व्हिच इज द इवेंट ऑब्जेक्ट इवेंट ऑब्जेक्ट हमारी एक स्पेशल ऑब्जेक्ट होती है जिसके पास इवेंट के बारे में सारी की सारी डिटेल्स होती है कैसी डिटेल्स कि वो इवेंट किस टाइप का इवेंट है क्या वो माउस का इवेंट है क्या वो पॉइंटर का इवेंट है क्या वो कीबोर्ड का इवेंट है किसी भी तरीके का इवेंट है उसका टाइप क्या है उस इवेंट का टारगेट क्या है यानी क्या वो इवेंट डिव के ऊपर आकर किया है क्या वो इवेंट हमारे बटन के ऊपर आकर किया है या इनपुट एलिमेंट के ऊपर आकर किया है क्या उसका टारगेट था इवेंट का हमारे ार स्क्रीन के ऊपर कहां पे माउस ने क्लिक किया तब जाके इवेंट करर हुआ इस तरीके की सारी जो बैकग्राउंड इंफॉर्मेशन होती है वो हमारे लिए एक स्पेशल ऑब्जेक्ट जो है सेव करके रखती है एंड ऑल इवेंट हैंडलर्स हैव एक्सेस टू द इवेंट ऑब्जेक्ट्स प्रॉपर्टीज एंड मेथड्स कहां पर जब भी हम इस तरीके से अपना हैंडलर डिफाइन करते हैं तो उसके अंदर हम एक स्पेशल आर्गुमेंट लिख सकते हैं जो होती है हमारी इवेंट ऑब्जेक्ट इसको जनरली हम ई से डिनोट करते हैं इसको हम ई भी लिख सकते हैं इसको हम ईवीटी भी लिख सकते हैं इवेंट भी लिख सकते हैं वैसे तो कोई भी नाम दिया जा सकता है क्योंकि एक वेरिएबल ही है पर जनरली हम इसे इवेंट कह देते हैं फॉर एग्जांपल यहां पे मेरे पास ये बटन डॉट ऑन क्लिक में आई एम डूइंग सम इवेंट हैंडलिंग तो यहां मैं एक ऑब्जेक्ट लिख सकती हूं e और ये e क्या है ये मेरे लिए मेरी इवेंट ऑब्जेक्ट है इसे चाहे तो हम प्रिंट करवा सकते हैं console.log e ये सारा काम यहां से हटा देते हैं लेट्स सेव रिफ्रेश जैसे ही बटन को क्लिक करेंगे हमारे पास क्या आया हमारे पास इवेंट ऑब्जेक्ट की वैल्यू प्रिंट होक आई अब इस इवेंट ऑब्जेक्ट के अंदर बहुत सारा डाटा होता है हमें सारे डाटा के अंदर नहीं जाना हम दो-चार इसकी कुछ प्रॉपर्टीज देखेंगे जैसे फॉर एग्जांपल वी हैव समथिंग कॉल्ड टारगेट टारगेट के अंदर स्टोर होता है कि इवेंट कहां पे अकर किया ये दिखा रहा है इवेंट मेरा एक बटन के ऊपर अकर किया और कहां पर इसकी आईडी इस बटन की आईडी है बीटीएन मान जैसे इसके ऊपर हर कर रहे हैं वो हाईलाइट भी हो रहा है हमारी स्क्रीन के ऊपर इवेंट का टाइप क्या था इवेंट का टाइप था दैट इट वाज अ क्लिक इवेंट बटन के ऊपर क्लिक किया तब जाके इवेंट अ कर गया उसके अलावा हमारे पास क्लाइंट एकस क्लाइंट y भी होता है क्लाइंट एक्स मतलब हमारी स्क्रीन पे कहां पे जाके हॉरिजॉन्टल कहां पे कौन सी पोजीशन पे जाके इवेंट अकर हुआ और क्लाइंट वा यानी वर्टिकली कौन सी पोजीशन पे जाके हमारा इवेंट जो है वोकर हुआ तो इस तरीके की कई सारी इंफॉर्मेशन है जो हमारे पास स्टोर होती है अब चाहे तो इस इंफॉर्मेशन को हम प्रिंट भी करवा सकते हैं फॉर एग्जांपल वी कैन प्रिंट console.log e टाइप यानी हमारे इवेंट का टाइप इनफैक्ट इसको ईवीटी कर लेते हैं दैट आई थिंक वुड बी मोर एप्रोप्राइटिंग और टाइप क्या था टाइप था क्लिक साथ में वी कैन कॉपी इट वी कैन प्रिंट द इवेंट टारगेट सेव रिफ्रेश जैसे बटन के ऊपर क्लिक किया तो यह हमारा टाइप था एंड जैसे इसके ऊपर हर करेंगे दिस इज माय इवेंट टारगेट इसी तरीके से हम क्लिक x एंड क्लिक y कर सकते हैं सो दिस इज माय क्लिक x साथ में इवेंट डॉट क्लिक वाई सेव रिफ्रेश बटन के ऊपर क्लिक किया ओके इट इज कमिंग एज अनडिफाइंड ठीक है दिस इज सपोज्ड टू बी क्लांट x एंड क्लाइंट y सेव रिफ्रेश बटन के ऊपर क्लिक करेंगे तो इस तरीके से हमारे पास 38 लाइन टीन आ जाएगा अब एज यू कैन सी कि इवेंट ऑब्जेक्ट के अंदर इतनी सारी प्रॉपर्टीज हैं कि हमें सब याद करने की जरूरत नहीं है जनरली हम क्या यूज़ करते हैं जनरली अगर कोई भी कोड आप लिख रहे होंगे उसके अंदर मेनली या तो इवेंट टाइप यूज़ होता है इवन टारगेट यूज़ होता है और अगर यू आर बिल्डिंग सम काइंड ऑफ़ अ गेम जो पोजीशन के ऊपर डिपेंड करता है हमारी स्क्रीन की तो उस केस में हम क्लाइंट एक्स क्लांट y को भी यूज़ कर सकते हैं ये तो हो गया इवेंट ऑब्जेक्ट को क्लिक पर यूज़ करना हम चाहे तो माउस ओवर पर भी अपनी इवेंट ऑब्जेक्ट को यूज़ कर सकते हैं वी कैन डिफाइन द इवेंट ऑब्जेक्ट हियर और ये सारी चीजें उसके लिए भी प्रिंट करवाते हैं सेव रिफ्रेश जैसे ही बॉक्स के अंदर जाएंगे तो हमारे पास काफी सारी चीजें प्रिंट हो के आ गई किस तरीके का इवेंट है इवेंट ऑब्जेक्ट का नाम है माउस इवेंट हमारे पास इसमें भी कई सारी डिफरेंट डिफरेंट इंफॉर्मेशन है इवेंट का टाइप है हमारे पास माउस ओवर इवेंट कहां पे आकर हुआ हमारे डिव पे आकर हुआ एंड उसकी पोजीशन क्या है स्क्रीन के ऊपर वो भी हमारे पास प्रिंट होक आ गई तो इस तरीके से वी कैन गेट एडिशनल इंफॉर्मेशन अबाउट द इवेंट इट सेल्फ थ्रू आवर इवेंट ऑब्जेक्ट अब नेक्स्ट हम बात करने वाले हैं इवेंट लिस्नर्स के बारे में तो अभी तक हमने इवेंट्स को हैंडल करने के दो तरीके देखें सबसे पहला वाज इनलाइन हैंडलिंग इनलाइन हैंडलिंग से अपने टैग के अंदर ही अपने एलिमेंट के के अंदर ही हम अपने एट्रिल को यूज़ करके अपने इवेंट को हैंडल कर रहे थे सेकंड तरीका हमने देखा कि हमने जावास्क्रिप्ट के अंदर अपने नोड के लिए हर एक इवेंट को लिखकर किसी एक फंक्शन के थ्रू हम अपने इवेंट को हैंडल कर सकते थे फर्स्ट तरीके के अंदर ड्रॉबैक ये था कि इनलाइन हैंडलिंग से हमारा एचटीएमएल कोड बहुत ज्यादा बल्की हो जाता है इसीलिए हम सेकंड तरीके को यूज़ करते हैं सेकंड तरीके का ड्रॉबैक ये है कि यहां पर एक बार में एक ही फंक्शन को लिख के अपने इवेंट को हम हैंडल कर सकते हैं तो इससे भी एक बेटर तरीका होता है हमारे इवेंट्स को हैंडल करने का व्हिच आर इवेंट लिसन इवेंट लि लिनस को हम ऐसे फंक्शन समझ सकते हैं जो हमेशा इवेंट के लिए लिसन करते हैं वो हमेशा सुनते रहते हैं कि इवेंट कब आएगा कब आएगा और जैसे ही इवेंट आता है वो अपना काम एग्जीक्यूट कर देते हैं और एक इवेंट के लिए हम मल्टीपल इवेंट लिस्नर्स को क्रिएट कर सकते हैं तो किसी भी इवेंट लिस्नर को क्रिएट करने का तरीका होता है कि हम लिखते हैं नोड और फिर उसके ऊपर ऐड करते हैं इवेंट लिसन और इस मेथड के अंदर हम दो इंफॉर्मेशन पास करते हैं सबसे पहला होता है हमारा इवेंट एंड दूसरा होता है हमारा कॉल बैक कॉलबैक के बारे में ऑलरेडी हमने बात कर रखा है कि कॉल बैक हमारा एक ऐसा फंक्शन होता है जो दूसरे फंक्शन में आर्गुमेंट की तरह जाता है तो ये क्या है ऐड इवेंट लिसन के अंदर हमारा एक आर्गुमेंट ही है और ये जो कॉल बैक होगा दिस विल बी अ फंक्शन और जैसे ही इवेंट अकर करेगा ये हमारा क्लिक इवेंट भी हो सकता है ये हमारा डबल क्लिक इवेंट भी हो सकता है जैसे ही ये इवेंट अकर करेगा वैसे ही हमारा कॉल बैक एग्जीक्यूट हो जाएगा तो इस फंक्शन के अंदर जो फंक्शन हम यहां पर पास करेंगे उसके अंदर जो भी लिखा होगा वो हमारे लिए एग्जीक्यूट हो जाएगा और ये जो कॉल बैक होता है इसी को हम अपना हैंडलर भी कहते हैं सो दिस इज बेसिकली माय इवेंट हैंडलर जो मेरे इवेंट को हैंडल करने वाला काम करेगा तो जो हमने नॉर्मल अपने हैंडलर्स लिखे हुए थे इसे अभी के लिए हटा देते हैं एंड इसे कर देते हैं कॉमेंट आउट ये जो काम हम यहां पर कर रहे थे इस सेम काम को अब अपने ऐड लिनर के अंदर कर सकते हैं बीटी एड bn1 एड इवेंट लिनर और इसके अंदर दो वैल्यूज मुझे पास करनी है एक होगा हमारा इवेंट कौन सा इवेंट हम अपने क्लिक इवेंट को एग्जीक्यूट करना चाहते हैं अच्छा यहां पे बार-बार हम क्लिक माउस ओवर डबल क्लिक इनको तो हमने देख लिया अगर आप और इवेंट्स के बारे में जानना चाहते हो तो ऑलरेडी मैंने आपको एमडीएन का रेफरेंस वाला लिंक दे दिया है यहां पर एक-एक इवेंट के ऊपर क्लिक करके वी कैन लुक एट द डिफरेंट इवेंट्स दैट आर अवेलेबल आउट देयर पर मोस्ट फ्री क्वेंट हम जनरली अपने क्लिक को यूज़ करते हैं अपने डबल क्लिक को यूज करते हैं इनको सबसे ज्यादा फ्रीक्वेंसी ही बटन वन के ऊपर क्लिक करेंगे हमारे पास हेलो भी प्रिंट हो गया आ गया हमारे पास बटन वन भी प्रिंट होकर आ गया अब ये हेलो कहां से प्रिंट हुआ हेलो हमारा प्रिंट हुआ index.htm से जो हम यहां पर प्रिंट करवा रहे थे इसे अभी के लिए हटा देते हैं सेफ ये तो हमने फर्स्ट इवेंट लिसन बना दिया ऐसे ही हम सेकंड इवेंट लिसन भी बना सकते हैं यहां पे लिख देंगे बटन वन वज क्लिक्ड हैंडलर टू सेव रिफ्रेश जैसे ही क्लिक करेंगे हमारे पास दोनों इवेंट लिस्नर्स जो हैं वो ट्रिगर हो गए तो इवेंट लिस्नर्स के थ्रू हम सेम इवेंट पे मल्टीपल काम करवा सकते हैं ये हमारे पास बेनिफिट होता है इसीलिए हम हमेशा इवेंट्स के लिए इवेंट लिस्नर्स को ही यूज़ करेंगे अब ये जो इवेंट लिस्नर्स है के अंदर हम अपनी इवेंट ऑब्जेक्ट को भी एक्सेस कर सकते हैं तो उसे एज एन आर्गुमेंट लिख सकते हैं और हम कसोल डलॉग करके प्रिंट करवा सकते हैं अपनी इवेंट ऑब्जेक्ट को अगर हमें इवेंट का टाइप प्रिंट करवाना है इस तरीके की इंफॉर्मेशन भी हम प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया बटन वन के ऊपर क्लिक किया तो ये तो प्रिंट होकर आ गई चीज ये हमारी इवेंट ऑब्जेक्ट हमारे पास आ गई ये इवेंट का टाइप आ गया और ये हमारे पास इवेंट का टारगेट आ गया तो इस तरीके से जितने भी काम है वो सारे के सारे इवेंट लिस्नर के इस हैंडलर के अंदर इस कॉल बैक के अंदर किए जा सकते हैं अब जैसे हम इवेंट लेसनेस को ऐड करते हैं वैसे ही किसी एलिमेंट के अंदर से हम इवेंट लिनस को रिमूव भी कर सकते हैं अब कभी भी इवेंट लिनर को रिमूव करने का क्या तरीका होता है उसके लिए हम लिखते हैं नोड ड रिमूव इवेंट लिनर और फिर हम पास कर देते हैं अपने इवेंट को और अपने कॉल बैक को और यह वो कॉल बैक होता है जिसको हम रिमूव करना चाहते हैं फॉर एग्जांपल यहां पर क्या करेंगे कसोल डट लॉक करके अपने जो बटन क्लिक के हमारे हैंडलर्स है यहां पे बटन वास क्लिक्ड और इसे कह देते हैं हैंडलर वन ये हो गया हमारा हैंडलर टू इसी तरीके से हम चार हैंडलर्स बना लेते हैं सेव एंड इसे कर देते हैं रिमूव सो दीज आर बेसिकली आर फोर इवेंट हैंडलर्स यहां पे इसको थ्री नाम दे देते हैं इसे हम फोर नाम दे देते हैं सेव रिफ्रेश जैसे ही हम बटन के ऊपर क्लिक करेंगे वैसे ही क्या होगा चारों ट्रिगर हो जाएंगे और चारों हमारे पासस चारों लाइंस हमारे पास प्रिंट होकर आ जाएगी अब हम चाहते हैं कि मुझे इस थर्ड को रिमूव करना है तो उसके लिए हम रिमूव इवेंट लिसन को कॉल कर सकते हैं तो हम लिखेंगे बटन डॉट रिमूव इवेंट लिनर और उसके अंदर हम पास कर देंगे एक तो अपना इवेंट की क्लिक इवेंट से मुझे इस हैंडलर थ्री को रिमूव करना है अब अगर हम इस तरीके से ये जो मेरा पूरा का पूरा हैंडलर फंक्शन है इसको यहां पर पास कर देंगे सेव करेंगे रिफ्रेश करेंगे बटन वन को क्लिक करेंगे तब क्या हो रहा है हैंडलर थ्री हमारे लिए रिमूव नहीं हुआ ये इसलिए रिमूव नहीं हुआ क्योंकि यहां पर ये जो मैंने फंक्शन बनाया हुआ है इवन दो काम दोनों सेम करा रहे हैं ये भी कसोल डलॉग करके सेम स्टेटमेंट प्रिंट करवा रहा है ये वाला फंक्शन भी कसोल डट लॉग करके सेम स्टेटमेंट प्रिंट करवा रहा है पर ये दोनों फंक्शन मेमोरी के अंदर अलग-अलग है मेमोरी के अंदर अलग कहने का मतलब है कि पहले हमने मेमोरी के बारे में बात की थी जब भी कोई फंक्शन क्रिएट होता है वो अपने आप में मेमोरी में कुछ जगह लेता है जैसे वेरिएबल कुछ जगह लेते हैं तो फर्स्ट टाइम जब मैंने अपने इस फंक्शन को क्रिएट किया तो उसने क्या किया मेमोरी में जगह ले ली कुछ दिस वाज माय फंक्शन वन अब सेकंड टाइम जब मैं फंक्शन को इस तरीके से क्रिएट कर रही हूं ये क्या करेगा मेमोरी में अलग जगह लेगा विद द नेम फंक्शन टू और फंक्शन थ्री व्हाट एवर इट इज बट ये फंक्शन और ये फंक्शन जस्ट बिकॉज़ दोनों की कंसोल डॉट लॉग स्टेटमेंट सेम है या काम सेम है डज नॉट मीन कि दोनों मेमोरी के अंदर सेम फंक्शन है दोनों अलग-अलग फंक्शन है बस वो काम सेम कर रहे हैं तो जब भी हमें रिमूव करना होता है इवेंट लिसन से अपने फंक्शन को तो हम क्या करते हैं द कॉल बैक रेफरेंस शुड बी सेम टू रिमूव यानी यह जो फंक्शन है यह बिल्कुल सेम फंक्शन होना चाहिए जिसको हम रिमूव के अंदर पास कर रहे हो तो इसीलिए जब भी हमें बाद में जाके अगर ऐसा लगता है मुझे किसी फंक्शन को रिमूव करना पड़ेगा तो उस फंक्शन को हम किसी वेरिएबल के अंदर स्टोर करा लेते हैं तो यहां हम लिख सकते हैं कॉन्स्ट इसको कह सकते हैं हैंडलर थ हैंडलर थ इज इक्वल टू दिस फंक्शन ये हमारा हैंडलर थ्री फंक्शन हो गया अब इस हैंडलर थ्री फंक्शन को हम यहां पर पास कर सकते हैं ये मैंने पास कर दिया और फिर यहां पर इसी हैंडलर थ्र को हम पास कर सकते हैं तो इसको वेरिएबल की तरह अब हम पास कर रहे होंगे तो इस बार हमारा ये जो फंक्शन है इसे मेमोरी में हमने एक सिंगल नाम दे दिया हैंडलर थ तो जहां यहां जब हम हैंडलर थ्री लिख रहे हैं तो भी हम सेम फंक्शन की बात करें हैं यहां जब हम हैंडलर थ्री लिख रहे हैं तो भी हम सेम फंक्शन की बात कर रहे हैं इस बार सेव करेंगे और रिफ्रेश करेंगे बटन को क्लिक करेंगे तो हमारे पास हैंडलर थी प्रिंट होकर नहीं आएगा इसलिए नहीं प्रिंट होके आएगा क्योंकि उसे हमने अपने बटन वन से रिमूव कर दिया तो इस तरीके से हम अपने हैंडलर फंक्शंस को रिमूव भी कर सकते हैं बस ये चीज याद रखनी है कि हमारे पास जो कॉल बैक रेफरेंस हो वो सेम होना चाहिए रिमूव करने के के लिए अब नेक्स्ट हम सॉल्व करने वाले हैं अपने लिए एक इंटरेस्टिंग सा प्रैक्टिस क्वेश्चन इसमें मुझे बोल रहा है क्रिएट अ टॉगल बटन दैट चेंजेज द स्क्रीन टू डार्क मोड व्हेन क्लिक्ड एंड लाइट मोड व्हेन क्लिक्ड अगेन तो हमें क्या करना है अपनी स्क्रीन के ऊपर ऐसा एक बटन बनाना है वी कैन क्रिएट दिस बटन जो क्या करेगा अगर इसके एक बार क्लिक करेंगे फर्स्ट टाइम लेट्स सपोज हमने क्लिक कर लिया तो ये क्या करेगा स्क्रीन को डार्क बना देगा और दोबारा से मैंने इसे सेकंड टाइम क्लिक किया तो स्क्रीन को दोबारा लाइट मोड में चेंज कर देगा फिर दोबारा क्लिक किया तो दोबारा डार्क मोड दोबारा क्लिक किया तो दोबारा लाइट मोड इस तरीके से जब हम एक स्टेट से दूसरी स्टेट में जाते हैं और दोबारा क्लिक करने पर वापस से उसी स्टेट प आ जाते हैं तो इसे हम टॉगलिंग कहते हैं या इसे हम टॉगल कहते हैं तो ये हमारा टॉगल बटन हो जाएगा और दो स्टेट्स के बीच में स्विच करते रहना उसे हम अपना टॉगल स्विच या टॉगल बटन कहते हैं तो इसे क्रिएट करने के लिए सबसे पहले हम अपना एक बटन क्रिएट कर लेते हैं लेट्स सपोज शुरुआत से ही कर लेते हैं दिस इज माय बटन इस बटन के ऊपर हम लिख सकते हैं चेंज मोड इस तरीके का कुछ और यहां पर अपने बटन को एक्सेस कर लेते हैं इस बटन को हम चाहे तो हम आई आडी भी दे सकते हैं इसे आईडी दे देते हैं मोड लेट मोड बटन मोड यानी ज हम डार्क मोड में है या हम लाइट मोड में तो यहां से हम अपने बटन को सिलेक्ट कर सकते हैं क्वेरी सिलेक्टर से अपनी आईडी के बेसिस पे तो माय आईडी इज मोड एंड फिर हम इस मोड बटन के ऊपर इवेंट लिनर ऐड कर सकते हैं तो ऐड इवेंट लिनर हमारा इवेंट क्या होगा हमारा इवेंट होगा क्लिक इवेंट क्लिक इवेंट के बेसिस पर हम एक हैंडलर ऐड करना चाहते हैं जो मेरे लिए क्या करेगा शुरुआत में तो सिर्फ कसोल डॉट लॉग करके प्रिंट करेगा यू आर ट्राइट चेंज मोड सेव रिफ्रेश ये हमारा बटन हो गया चेंज मोड के ऊपर क्लिक करेंगे तो सिंपली प्रिंट होके आ रहा है यू आर ट्राइट चेंज मोड अब मुझे ऐसा बटन क्रिएट करना है जो पहली बार क्लिक हो तो डार्क मोड में जाए दूसरी बार क्लिक हो तो दोबारा लाइट मोड में आए दोबारा क्लिक हो तो दोबारा डार्क मोड में जाए उसके लिए हम एक वेरिएबल बना सकते हैं लेट मोड और यह मोड क्या करेगा हमारे करंट मोड को सेव करवाएगा या इसे करंट मोड कह देते हैं और करंट मोड क्या है करंट मोड इज लाइट मोड या इसे सिंपली हम लाइट भी कह सकते हैं करंट मोड भी क्या है लाइट वैल्यू है सेव कर लिया य हम अपने करंट मोड को चाहे तो प्रिंट करवा सकते हैं अब बटन के क्लिक पर हम चेक कर सकते हैं अगर हमारे करंट मोड की वैल्यू लाइट है तब तो उसे हमें डार्क में चेंज करना है और करंट मोड की वैल्यू डार्क है तो फिर मुझे उसे लाइट में चेंज करना है तो य चेक कर लेंगे इफ माय मोड या इफ माय करंट मोड इ इक्वल टू लाइट उस केस में क्या करना है उस केस में में मुझे अपने करंट मोड की वैल्यू चेंज करनी है टू डार्क अभी हम सिर्फ वेरिएबल की वैल्यू चेंज कर रहे हैं एल्स मुझे अपने करंट मोड की वैल्यू चेंज करनी है टू लाइट तो मेरा करंट मोड अभी लाइट है तो मुझे उसे डार्क में चेंज करना है डार्क है तो मुझे उसे लाइट में चेंज करना है सेव किया रिफ्रेश किया तो चेंज करने के बाद हम अपने करंट मोड को प्रिंट भी करवा सकते हैं कसोल डलॉग माय करंट मोड सो दैट वी नो इट हैज बीन चेंज्ड रिफ्रेश कर लेते हैं चेंज किया डार्क हो गया मोड दोबारा चेंज किया इस बार लाइट हो गया दोबारा चेंज किया डार्क हो गया गया दोबारा चेंज किया लाइट हो गया दोबारा चेंज किया डार्क हो गया एंड इस तरीके से अब ये टॉगल कर रहा है यानी स्विच कर रहा है अब मुझे इसी वैल्यू के बेसिस पर यानी यहीं पर कंडीशंस के अंदर अपने बैकग्राउंड कलर को भी लेट्स सपोज चेंज करना है तो हम क्या कर सकते हैं अगर मुझे करंट मोड को डार्क बनाना है तो इस केस में क्या करेंगे उस केस में हम अपनी बॉडी को सिलेक्ट कर लेते हैं डॉक्यूमेंट डॉट क्वेरी सिलेक्टर माय बॉडी एंड डॉट स्टाइल डॉट बैकग्राउंड कलर करके हम अपने बैकग्राउंड कलर को चेंज कर सकते हैं टू ब्लैक लेट्स चेंज इट टू ब्लैक और अगर लाइट मोड है तो तो दोबारा से हम इसे चेंज कर देंगे टू वाइट लेट्स सेव इट रिफ्रेश इट इस बार जैसे ही बटन के ऊपर क्लिक किया कौन से मोड में आ गए डार्क मोड में आ गए दोबारा क्लिक किया लाइट मोड में आ गए दोबारा क्लिक किया डार्क मोड में आ गए दोबारा क्लिक किया लाइट मोड में आ गए तो इस तरीके से वी हैव क्रिएटेडॉक्युमेंट्सफ्रैगमेंट और एक मेरी लाइट क्लास हो गई डार्क क्लास में क्या होगा बैकग्राउंड कलर हो जाएगा ब्लैक और टेक्स्ट का कलर हो जाएगा वाइट लाइट मोड में क्या होगा बैकग्राउंड कलर हो जाएगा वाइट एंड टेक्स्ट का कलर हो जाएगा हमारे पास ब्लैक इसको सेव कर लेते हैं तो अब स्क्रिप्ट ड जस के अंदर जाके हमें क्या करना है अपनी बॉडी को सेलेक्ट करना है और बॉडी की क्लास लिस्ट में मुझे ऐड करना है किसे अपनी क्लास डार्क को एंड इसी तरीके से या इन फैक्ट वी कैन चेंज दिस वी कैन एक्सेस द बॉडी लेट बॉडी इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर बॉडी सो इट कैन सिंपली बी बॉडीड क्लेस डार्क और यहां आ जाएगा बॉडीड क्लासले डड लाइट सेव रिफ्रेश जैसे ही चेंज मोड के ऊपर क्लिक करेंगे डार्क हो गया दोबारा क्लिक करेंगे ला हो गया क्लिक करेंगे डार्क हो गया क्लिक करेंगे लाइट हो गया वी कैन आल्सो डू दिस फॉर अ पैराग्राफ फॉर एग्जांपल हमारे पास एक पैराग्राफ है दिस इज अ सिंपल लाइन या लेट्स राइट वेलकम टू माय वेबसाइट वेलकम टू माय वेबसाइट इस तरीके कुछ लिखते हैं सेव रिफ्रेश अभी जैसे ही चेंज मोड के ऊपर हम क्लिक कर रहे हैं क्या हो रहा है डार्क मोड हो गया टेक्स्ट वाइट हो गया दोबारा चेंज मोड पे क्लिक करेंगे लाइट मोड हो गया टेक्स्ट डार्क हो गया दोबारा चेंज मोड के ऊपर ओके इट इज नॉट अप्लाइड तो स्क्रिप्ट ड जए के अंदर व्हाट वी कैन डू इज अच्छा जब हम क्लास में डार्क को ऐड कर रहे हैं तब मुझे क्या करना है अपने लाइट को रिमूव भी करना है तो अपने लाइट को हम साथ में रिमूव भी कर देंगे और यहां पे क्या करेंगे जब लाइट को ऐड कर रहे हैं तो क्लास में से डार्क को रिमूव कर देंगे सेव किया रिफ्रेश किया जैसे ही चेंज मोड के ऊपर क्लिक करें हैं डार्क मोड लाइट मोड डार्क मोड लाइट मोड डार्क मोड लाइट मोड इस तरीके से हम अपनी वेबसाइट के ऊपर डार्क एंड लाइट मोड को इंप्लीमेंट कर सकते हैं सो दिस वाज अ डेमो ऑफ हाउ इवेंट्स वर्क ये सारी चीजें कैसे पॉसिबल हो पा रही है इवेंट्स के थ्रू कौन से इवेंट को हम ट्रैक कर रहे हैं कि किसी बटन को क्लिक किया जा रहा है उस इवेंट को हम ट्रैक कर रहे हैं इस तरीके से अपनी वेबसाइट के ऊपर बहुत सारे इंटरेस्टिंग काम है जो इवेंट्स के बेसिस पे किए जा सकते हैं एंड दिस वाज वन ऑफ देम तो ये तो हमने क्लिक के ऊपर एक डेमो लिया है आपके लिए होमवर्क प्रॉब्लम ये होगा कि माउस ओवर वाला जो हमारा इवेंट होता है यू हैव टू डू समथिंग यू हैव टू क्रिएट समथिंग रिलेटेड टू माउस ओवर यानी किसी भी एलिमेंट के ऊपर हर करने से पेज के ऊपर कुछ चेंज आना चाहिए इस तरीके का कुछ आपको अपनी क्रिएटिविटी यूज करके बिल्ड करना है हाय एवरीवन तो आज हम बिल्ड करने वाले हैं अपने लिए अपना एक रॉक पेपर सीजर्स गेम एंड ये गेम कुछ इस तरीके से दिखाई देगा यानी हम इस तरीके से एक वेब पेज बिल्ड करेंगे जिसमें टॉप पर हमारे पास तीन ऑप्शंस होंगे पहला ऑप्शन हमारे रॉक के लिए होगा सेकंड ऑप्शन पेपर के लिए थर्ड ऑप्शन सीजर्स के लिए एंड यूज़र क्या कर सकता है यूजर तीनों में से किसी भी ऑप्शन को क्लिक करके सेलेक्ट कर सकता है उसके अलावा हमारे पास यूजर एंड कंप्यूटर दोनों का स्कोर होगा अगर यूजर ने लेट्स सपोज रॉक सिलेक्ट किया तो उसके बाद ऑटोमेटिक हमारा कंप्यूटर रॉक पेपर सीजर्स में से कोई एक सिलेक्शन लेगा एंड बेस्ड अपॉन कि दोनों में से मतलब हम में से या कंप्यूटर में से जो भी जीतेगा उसका स्कोर यहां पर अपडेट हो जाएगा एंड यहां पर ये वाला जो मैसेज बॉक्स है ये भी हमारे पास अपडेट होकर आएगा कुछ इस तरीके से हम गेम को खेल रहे होंगे जैसे हमने रॉक को प्रेस किया तो यहां पर आया इट वाज अ ड्रॉ यानी कंप्यूटर ने भी क्या किया होगा सिस्टम ने भी हमारे लिए रॉक जनरेट किया होगा दोबारा से अगर हम रॉक को प्रेस करते हैं तो इस बार यहां पर लिखा आ रहा है यू लॉस्ट पेपर बीट्स रॉक यानी कंप्यूटर ने पेपर जनरेट किया और हमने रॉक को सेलेक्ट किया था इसीलिए कंप्यूटर का स्कोर + व हो गया और हमारा स्कोर अभी भी ज़ीरो है दोबारा हम रॉक को सेलेक्ट करते हैं तो दोबारा से वी लॉस्ट क्योंकि दोबारा से कंप्यूटर ने पेपर को सेलेक्ट किया दोबारा करते हैं तो दोबारा से वी लॉस्ट टू कंप्यूटर एंड इसी तरीके से आई एम जस्ट ट्रा टू गेट अ विन एंड फाइनली वी गॉट अ विन यानी जब हम विन कर जाएंगे तो इस तरीके से ग्रीन कलर में हमारे लिए मैसेज डिस्प्ले होकर आएगा यू वन रॉक बीट सिसर यानी इस बार कंप्यूटर ने हमारे लिए सिजर जनरेट किया था और हमने रॉक को चूज किया था एंड क्योंकि हम एक बार ही जीत गए हैं तो हमारा स्कोर भी अपडेट हो गया है बाय वन तो इस तरीके से हम अपने गेम को प्ले कर सकते हैं इट इज अ नेवर एंडिंग अनलिमिटेड स्कोर वाला गेम जिसमें कितने भी टाइम्स हम इसको प्ले कर सकते हैं तो इस गेम को हम बिल्ड करने वाले हैं प्योर यूजिंग हमने जो स्टाइलिंग रखी है रॉक पेपर सिजर की वो कुछ ऐसी रहेगी बट आप अपने हिसाब से कोई भी सीएसएस के अंदर html5 जिसमें हमारा html.com हमारे पेपर वाले सिंबल की इमेज है एंड इसके साथ-साथ हमारे पास एक सिर्स की इमेज है ये सारा का सारा जो लिंक है इमेजेस का ये आपको नीचे डिस्क्रिप्शन बॉक्स के अंदर मिल जाएगा आप चाहे तो वहां से इमेजेस डाउनलोड कर सकते हैं नहीं तो हम चाहे तो इमेजेस की जगह इमोजीस को भी यूज कर सकते हैं जो हम कीबोर्ड से नॉर्मली टाइप कर सकते हैं नहीं तो हम चाहे तो खुद की अपनी कस्टम इमेजेस को भी यूज कर सकते हैं सो इट ऑल डिपेंड्स अपऑन यू कि आप अपने प्रोजेक्ट को क्या स्टाइलिंग देना चाहते हैं सो लेट्स स्टार्ट विद आवर इक्सड सीजर्स गेम इस तरीके से एंड यहां पर लेट्स गिव एन h1 हेडिंग सेम हेडिंग हम चाहे तो दे सकते हैं रॉक पेपर एंड सीजर्स सेव एंड इसे कर लेंगे रिफ्रेश तो सारी चीजें गायब हो गई हम बिल्कुल बेसिक से यानी बिल्कुल जरो से स्टार्ट करने वाले हैं तो ये हमारा रॉक पेपर सीजर्स हो गया अब रॉक पेपर सीजर्स गेम के लिए हमें क्या-क्या चीजें चाहिए एक हमने हेडिंग दे दिए है गेम को उसके अलावा हमें अपनी चॉइसेज सबसे पहले यूजर को दिखानी पड़ेगी यानी यूजर कुछ भी जो चूज करेगा रॉक चूज करेगा पेपर चूज करेगा सिजर चूज करेगा उसके लिए उसे वो चीजें विजुअली दिखाई देनी चाहिए तो हमारी जो चॉइसेज हैं उनको हमें यानी इमेजेस को यूजर को दिखाना है तो इन सारी चॉइसेज को सबसे पहले तो हम एक डिव बना लेते हैं चॉइसेज नाम का इसे क्लास दे देते हैं चॉइसेज और इसके अंदर हम तीन चॉइसेज जो हैं वो अपने यूजर को डिस्प्ले कराएंगे फर्स्ट जो चॉइस होगी इसे भी डिव बना लेते हैं इसके अंदर हम अपनी इमेज को शो करेंगे सोर्स इज इक्वल टू इमेजेस के अंदर रॉड पीए ये मेरी फाइल का नाम है हमें ये ध्यान रखना है कि हमें जो अपनी इमेजेस ऐड करनी है वो अपने जावास्क्रिप्ट फोल्डर के अंदर ही ऐड ऐड करनी है नहीं तो हमारा कोड वर्क नहीं करेगा नहीं तो इमेजेस हमें इस तरीके से नहीं दिखाई दगी अगर हम कहीं और अपनी इमेजेस को स्टोर कर रहे हैं तो उस केस में हमें अपने सोर्स के यूआरएल को चेंज करना पड़ेगा तो ये हो गई हमारी इमेज नंबर वन इसको कर लेते हैं सेव एंड रिफ्रेश तो यहां पर हमारी इमेज हमें दिखाई दे रही है लद इट इज अ रियली लार्ज इमेज राइट नाउ बट इसकी साइजिंग एंड स्टाइलिंग सारी चीजें हम कर रहे होंगे इसी तरीके से यहां पर ये अपना चॉइस वाला डिव कॉपी कर लेते हैं ये सेकंड चॉइस आ जाएगी यहां पर इस चॉइस में हम दिखाएंगे अपनी पेपर वाली इमेज एंड इसी तरीके से हमारे पास पा हमारी थर्ड चॉइस आ जाएगी जिसमें हम दिखाने वाले अपनी सिज्जू रिफ्रेश यह हमारा रॉक आ गया यह हमारी पेपर वाली इमेज आ गई एंड यह हमारी सिजर वाली इमेज आ गई अब इन सबको हमें धीरे-धीरे स्टाइल करना है स्टाइलिंग से पहले अपने मेन कंटेंट के ऊपर ध्यान देते हैं अब क्योंकि अपनी चॉइसेज को हम यूनिक भी आइडेंटिफिकेशन शुरुआत में ही एक आईडी दे देते हैं आईडी इज इक्वल टू रॉक आईडी इज इक्वल टू पेपर एंड आईडी इज इक्वल टू सीजर्स ये हमारे पास तीनों की तीनों आईडी आ गई है ये हो गई हमारी चॉइसेज चॉइसेज के बाद आपने नोटिस किया होगा कि हमने स्कोर को प्रिंट करवाया था तो उसके लिए हमारे पास एक स्कोर बोर्ड होना चाहिए तो उसके लिए हम एक और डिव क्रिएट कर लेते हैं वी विल गिव इट अ क्लास स्कोर बोर्ड और स्कोर बोर्ड के अंदर हमें यूजर एंड कंप्यूटर यानी अपना और कंप्यूटर दोनों का स्कोर दिखाना है तो अपने लिए एक स्कोर नाम का हम डिव बना लेते हैं जिसमें हम एक पैराग्राफ क्रिएट करेंगे पैराग्राफ के अंदर सबसे पहले हम स्कोर दिखाने वाले हैं यूजर के लिए तो यहां पर दो पैराग्राफ्स बना लेते हैं दिस इज गोइंग टू बी यूजर ये हो जाएगा हमारे यूजर का स्कोर इन फैक्ट इसे यू लिख सकते हैं कि ये हमारा स्कोर है एंड सेकंड एक डिव हम बना लेंगे हमारे कंप्यूटर स्कोर के लिए तो इसे कंप्यूटर लिख सकते हैं नहीं तो इसे हम कॉम्प भी लिख सकते हैं शॉर्ट फॉर्म के लिए एंड इसे भी शुरुआत में हम जरो रखेंगे हम चाहे तो जो स्कोर है क्योंकि ये वाला जो स्कोर है ये अपडेट होता रहेगा अभी हो सकता है हमारा स्कोर जीरो कल को हो सकता है वन हो जाए टू हो जाए थ्री हो जाए तो ये ये ऐसी वैल्यू है ये ऐसा पैराग्राफ है जो अपडेट होता रहेगा अब क्योंकि अपडेट होगा तो बाद में हमें इसे जावास्क्रिप्ट की फाइल में एक्सेस करना पड़ेगा तो इसीलिए शुरुआत में ही इसे हम कोई आईडी या क्लास दे सकते हैं वी कैन गिव इट एन आईडी यूजर स्कोर इसे हम कह सकते हैं एंड इस वाले स्कोर को हम एक आईडी दे सकते हैं वी कैन कॉल इट कंप्यूटर स्कोर ये वाला जो हमारा टेक्स्ट है यू एंड कंप्यूटर ये दोनों पैराग्राफ्स एज सच कभी चेंज नहीं होने वाले तो इन्हें हमें आईडी देने की ए जरूरत नहीं है इसे कर लेते हैं सेव तो ये हो गया हमारा स्कोर बोर्ड एंड स्कोर बोर्ड के बाद हमारे पास कुछ मैसेज होना चाहिए मैसेज बॉक्स मैसेज कंटेनर जो हमें बताए कि हम जीत रहे हैं या गेम ड्रॉ हो रहा है या जो अभी करंट टर्न चल रही है उसमें क्या रिजल्ट आया है तो उसके लिए वी कैन क्रिएट अ डिव कॉल्ड मैसेज कंटेनर एंड मैसेज कंटेनर के अंदर हम एक पैराग्राफ बना सकते हैं जैसे एक आईडी दे देते हैं मैसेज एंड इसमें हम लिख सकते हैं प्ले योर मूव या इस तरीके का कुछ मैसेज स्टार्टिंग के लिए तो एक बार अपने पेज पर आ जाते हैं एंड दिस इज बेसिकली अभी हमारी h1 हेडिंग उसके बाद हमारे पास तीन इमेजेस हैं यहां पर जीरो हमारा स्कोर प्रिंट होके आ आ रहा है एंड फिर कंप्यूटर का स्कोर प्रिंट होके आ रहा है और फिर हमारे लिए हमारा मैसेज प्रिंट होकर आ रहा है अब इन्हीं चीजों को हमें और बेटर तरीके से प्रेजेंट करना है तो उसके लिए अपनी जो स्टाइल ड सीएसएस है उसे हम ओपन कर लेते हैं सबसे पहले शुरुआत करते हैं हमारी मार्जिन एंड पैडिट को जीरो सेट करने के साथ कैन गिव इट मार्जिन पैडिट जीरो एंड इसे साथ के साथ कनेक्ट कर लेते हैं तो लिंक कर लेंगे अपनी स्टाइल शीट को h रेफ इ style.css सेफ रिफ्रेश तो ये लिंक हो गया तो सारी मार्जिन जो लेफ्ट की तरफ हमारे पास मार्जिन आ रही थी पैडिट आ रही थी सारी की सारी स्टाइलिंग कंप्लीट हट गई है अब सबसे पहले हम स्टाइल करना स्टार्ट करेंगे अपनी h1 हेडिंग को लेट्स स्टाइल आवर h1 हेडिंग तो h1 हेडिंग के लिए हम लेट्स गिव इट अ बैकग्राउंड कलर आई वांट टू गिव इट अ डार्क बैकग्राउंड कलर जिसके लिए कूलर्स जिसको हमने लास्ट लेक्चर के अंदर डिस्कस किया था कि किस तरीके से बहुत सारे कलर पैलेट हैं जिनको हम जनरेट कर सकते हैं तो मैंने ऑलरेडी एक डार्क ब्लू कलर का थोड़ा सा डार्कर वर्जन है जिसको पैलेट में जनरेट किया था 081 b31 दिस इज बेसिकली माय कलर एंड इसे रिफ्रेश कर लेंगे तो इस तरीके का डार्क ब्लू बैकग्राउंड कलर हमारे पास आ जाएगा एंड इसके फोरग्राउंड यानी टेक्स्ट कलर को हम रख सकते हैं वाइट सेव रिफ्रेश ये हमारे पास वाइट कलर आ गया हम चाहे तो इसे कुछ हाइट दे सकते हैं लेट्स गिव इट अ हाइट ऑफ थ्री रेम्स या वी कैन मेक इट फाइव रेम्स थोड़ा सा पड़ी हाइट दे सकते हैं इसे सेंटर में लाने के लिए हम कर सकते हैं टेक्स्ट अलाइन सेंटर या इनफैक्ट पूरे के पूरे डॉक्यूमेंट को हम टेक्स्ट अलाइन सेंटर दे सकते हैं सेव रिफ्रेश तो ये सेंटर में आ गया एंड इसे वर्टिकली थोड़ा सा सेंटर के अंदर लाने के लिए देयर इज दिस ट्रिक टू गिव लाइन हाइट ऑफ फाइ फ्रेम यानी जितनी हाइट है उतनी आप लाइन हाइट दे दो टेक्स्ट को तो टेक्स्ट क्या करेगा टेक्स्ट सेंटर में आ जाएगा वर्टिकली सो आई यूज इट फॉर माय हेडिंग्स तो इस तरीके से हमारा रॉक पेपर सिजर हमारे लिए लिखकर आ गया है नेक्स्ट हम अपनी चॉइसेज के ऊपर फोकस करेंगे यानी इन चॉइसेज को अपनी इमेजेस को कैसे हम प्रेजेंट कर सकते हैं सबसे पहले तो हमारा जो चॉइस है यानी ये जो इंडिविजुअल डिव है ये हमारा फर्स्ट डिव है ये हमारा सेकंड डिव है ये हमारा थर्ड डिव है तीनों डिव को कुछ कुछ हम हाइट एंड विड्थ देने वाले हैं चॉइस क्लास से इन्ह सेलेक्ट कर लेते हैं लेट्स गिव देम अ हाइट ऑफ 100 पिक्सल्स एंड विड्थ ऑफ 100 पिक्सेल सेफ रिफ्रेश तो इस तरीके से हमारे डिव हमारे लिए प्रिंट होकर आ रहे हैं साथ के साथ हमारी जो इमेजेस हैं हम अपनी इंडिविजुअल सारी की सारी इमेजेस को सिमिलर हाइट एक बार देकर देखते हैं रिफ्रेश तो इस तरीके से हमारी इमेजेस आ गई है एंड यहां पर आकर थोड़ा सा हम साइज को इंक्रीज कर देते हैं इन फैक्ट लेट्स मेक इट 150 सेव एंड रिफ्रेश तो ये हमारी इमेजेस आ गई अब जब इस तरीके से हम इमेजेस को डिव के अंदर स्टोर करते हैं तो हमें दिखाई देगा थोड़ी सी यहां पर डिस्टोर्ट हो रही है मतलब इमेजेस उतनी अच्छी तरीके से नहीं आ रही ऐसा लग रहा है कि इमेजेस या तो बहुत ज्यादा कॉन्ट्रैक्ट हो जाती है जब हम स्टाइल करने की कोशिश करते हैं या बहुत ज्यादा स्ट्रेच हो जाती है यहां पर ऐसा लग सकता है हमारी इमेजेस बहुत ज्यादा कॉन्ट्रैक्ट हो रही है श्रिंक होकर आ रही है तो उसके लिए व्हाट वी कैन डू इज आई विल गिव देम अ प्रॉपर्टी कॉल्ड ऑब्जेक्ट फिट जिसको हम सेट कर सकते हैं टू कवर सेव किया रिफ्रेश किया तो इमेज थोड़ी सी और बेटर तरीके से हमारे लिए निकल के आएगी एंड यहां पर यह जो हमारा चॉइस है इसे थोड़ा सा हम साइज में चाहे तो डिक्रीज कर सकते हैं वी कैन मेक इट 165 पिक्सल्स प्रोबेबली तो अगर मैं आपको शो करूं कि हमारे डिव एंड हमारे इमेजस किस तरीके से प्रेजेंट होके आ रही है तो ये बेसिकली हमारा पूरा का पूरा डिव है या यहां पर आ जाते ये हमारा पूरा का पूरा डिव है जिसके अंदर दिस इज माय इमेज दिस इज माय एंटायस इज माय इमेज दिस इज माय एंटायस इज माय इमेज तो डिव के अंदर हमारी इमेज स्टोर हो कर आ रही है अब ये इमेजेस अभी थोड़ी स्क्वेयर शेप के अंदर है क्योंकि हाइट विड्थ सेम है इन्हें राउंड बनाने के लिए हम इन्हें बॉर्डर रेडियस दे सकते हैं तो इमेज को हम एक बॉर्डर रेडियस दे सकते हैं व्हिच इज गोइंग टू बी 50 पर टू मेक देम अ सर्कल इस सर्किल के अंदर कन्वर्ट हो जाएंगी एंड ये जो सारी की सारी इमेजेस हैं इन्हें अब सेम लाइन पे लाने के लिए हम सार सारी की सारी इमेजेस का जो कंटेनर है उसे डिस्प्ले फ्लेक्सस कर सकते हैं तो सारी की सारी हमारी ये जो चॉइसेज है ये चॉइसेज नाम के डिव के अंदर है तो यहां उसे चूज कर लेते हैं चॉइसेज डिव के अंदर व्हाट वी विल डू इज यहां पर हम डिस्प्ले कर देंगे सेट टू फ्लेक्स सेव रिफ्रेश तो ये हमारा डिस्प्ले फ्लेक्स हो गया अब वर्टिकली एंड हॉरिजॉन्टल अलाइन करने के लिए जस्टिफाई कंटेंट सेंटर तो ये हमारे पास सेंटर में आ जाएंगी एंड साथ के साथ अलाइन आइटम्स को भी कर देंगे टू सेंटर सेव रिफ्रेश इन्हें हम चाहे तो एक गैप भी दे सकते हैं लेट्स गिव देम अ गैप ऑफ थ्री रेम्स तो ये हमारे पास थोड़ा सा गैप आ जाएगा और चाहे तो ऊपर से एक मार्जिन दे सकते हैं फ्रॉम टॉप लेट्स गिव अ मार्जिन फ्रॉम टॉप इक्वल टू फ रेम्स ये हमारे पास मार्जिन आ गई तो इस तरीके से हमारे पास हमारे तीनों चॉइसेज आ गए हैं ये हमारी रॉक वाली चॉइस है ये हमारी पेपर वाली चॉइस है ये हमारी सिजर वाली चॉइस है बट अभी अगर हम इन पर क्लिक कर रहे हैं तो एज सच हमें पता नहीं चल रहा कि हम इन पर क्लिक कर रहे हैं तो व्हाट वी कैन डू इज जैसे ही हम किसी किसी भी चॉइस के ऊपर हर करें चॉइस के ऊपर हर करें यानी इस पर आए इस पर आए या इस पर आए वैसे ही क्या हो जाए वैसे ही एग्जांपल के लिए हम ओपेसिटी को हाफ करना चाहते हैं यानी ब्लर हो जाएगी हमारी इमेज रिफ्रेश किया इस पर आए ओपेसिटी हाफ हो गई इस पर आए ओपेसिटी हाफ हो गई इस पर आए ओपेसिटी हाफ हो गई इससे क्या पता चल रहा है इससे हम अपने हर को ट्रैक कर पा रहे हैं कि जैसे-जैसे हमारा जो कर्सर है वो यहां पर जा रहा है वैसे ही ओपेसिटी हाफ हो रही है एंड देयर इज वन मोर थिंग दैट वी कैन डू कि हमारा जो कर्सर होता है उसको हम सेट कर सकते हैं चेंज कर सकते हैं टू पॉइंटर रिफ्रेश किया जैसे ही इस पर जाएंगे आप नोटिस करो हमारा कर्सर चेंज हो रहा है इसकी जगह हमारे पास ये हैंड वाला कर्सर आ रहा है व्हिच इज आवर पॉइंटर तो हमें पता चल रहा है क्लीयरली कि हम किस पर जा रहे हैं कौन सी चॉइस को हम सेलेक्ट करने की कोशिश कर रहे हैं बट ओपेसिटी हाफ करने की बजाय व्हाट आई विल डू इज हम अपने चॉइस वाले डिव को भी एक बॉर्डर रेडियस दे देंगे 50 पर रिफ्रेश एंड जैसे ही हर होगा हम चॉइस वाले डिव को एक बैकग्राउंड कलर देंगे व्हिच विल बी दिस सेम ब्लैकिश ब्लू बैकग्राउंड कलर रिफ्रेश किया जैसे जैसे इसके ऊपर हर किया इस तरीके से हमारा जो बैकग्राउंड वाला डिव है वो हाईलाइट हो रहा है पर आप एक चीज नोटिस करेंगे हमारी जो इमेज है वो उस डिव वाले सर्कल के अंदर कंप्लीट सेंटर्ड नहीं है इसीलिए जो बाउंड्री आ रही है वो उतने अच्छे से नहीं आ रही नीचे की तरफ बाउंड्री का साइज बड़ा है तो वो साइजिंग ठीक करने के लिए चॉइस वाले डेव को वी कैन मेक इट डिस्प्ले फ्लेक्स एंड वी कैन जस्टिफाई कंटेंट टू सेंटर एंड वी कैन अलाइन आइटम्स टू सेंटर सेव किया रिफ्रेश किया अब हर करेंगे तो ये अच्छे से हाईलाइट हो रहा है ये भी ये भी तो इस तरीके से सारी चीजें हमारे लिए फिट होकर आ रही है और हमें क्लियर पता चल रहा है कि हम किस ऑप्शन को सेलेक्ट करने की या चूज करने की कोशिश कर रहे हैं नेक्स्ट चीज जिस पर हम काम करेंगे वो होगा हमारा स्कोर बोर्ड तो अपने स्कोर बोर्ड पर आ जाते हैं स्कोर बोर्ड के लिए सबसे पहले तो हम अपने आइटम्स को किस तरीके से दिखाना चाहते हैं हम चाहते हैं जीरो आ जाए नीचे हमारा नाम आ जाए उसके बाद दूसरी तरफ उसी के सामने जरो आ जाए एंड फिर कॉम्प आ जाए तो हमारे जो स्कोर बोर्ड है इसके अंदर लेफ्ट की तरफ हमारा ये डिव जाए है राइट की तरफ हमारा ये डिवा जा है तो इस तरीके से अरेंज करने के लिए स्कोर बोर्ड को भी हम डिस्प्ले फ्लेक्सस कर सकते हैं सो लेट्स गो टू आवर स्कोर बोर्ड एंड इसे कर देते हैं डिस्प्ले फ्लेक्स सेव रिफ्रेश तो ये दोनों क्या हो गए दोनों सेम लाइन के अंदर आ गए अब इन्हे सेंटर में लाने के लिए वी कैन डू जस्टिफाई कंटेंट सेंटर तो ये हमारे पास सेंटर में आ गए साथ के साथ वर्टिकली अलाइन करने के लिए हम अलाइन आइटम्स भी सेंटर कर सकते हैं एंड आल्सो आई वांट टू इंक्रीज द फंट साइज तो यहां पे जो फॉन्ट साइज है इसे वी कैन सेट इट टू वन रेम टू रेम्स तो ये हमारा नॉर्मल फंट साइज हो जाएगा प्लस मैं चाहती हूं यह वाले जो हमारे स्कोर है यानी ये जो यूजर का स्कोर है ये जो कंप्यूटर का स्कोर है दोनों का साइज स्कोर का साइज काफी बड़ा होकर आ जाए तो उसके लिए इंडिविजुअल इस आईडी को यूजर स्कोर एंड कॉम स्कोर इनका साइज मुझे बड़ा करना है अगर तो इन दोनों को हम सेलेक्ट कर सकते हैं कॉम्प स्कोर एंड आई कैन इंक्रीज द फंट साइज टू मे बी फोर रम रिफ्रेश किया तो ये हमारे पास हमारे स्कोर्स आ गए अब हम स्कोर बोर्ड से थोड़ा सा मार्जिन ले सकते हैं फ्रॉम टॉप लेट्स गिव इट अ मार्जिन ऑफ थ्री रेम्स रिफ्रेश किया यहां पर हमारा स्कोर आ जाएगा बीच में हम थोड़ा सा गैप भी दे सकते हैं लेट्स गिव देम अ गैप ऑफ फाइव फम तो ये हमारा स्कोर आ जाएगा ये कंप्यूटर का स्कोर आ जाएगा और ये जो ऊपर वाला स्कोर है ये हमारे लिए अपडेट होता रहेगा अब नेक्स्ट आ जाते हैं अपने मैसेज कंटेनर के साथ मैसेज कंटेनर को डिजाइन करने के लिए इनफैक्ट मैसेज कंटेनर की जगह हम इस मैसेज पर ही स्पेसिफिक फोकस रख सकते हैं व्हाट वी कैन डू इज हमारा जो मैसेज पैराग्राफ है इसे पहले तो एक बैकग्राउंड कलर हम दे सकते हैं एंड फॉर ग्राउंड कलर इसके लिए हम रख सकते हैं वाइट कलर सेव रिफ्रेश ओके ये हमारी आईडी मैसेज होने वाली है रिफ्रेश सो दिस इज माय मैसेज कंटेनर साथ के साथ इसे एक हम लाइन हाइट या हाइट दे सकते हैं सिंपली इक्वल टू 5 फ्रेम्स रिफ्रेश तो ये हमारी हाइट आ जाएगी या हाइट की जगह हम इसका फॉन्ट साइज इंक्रीज करके लेट्स मेक इट टू रेम्स य हमारा फॉन्ट साइज इंक्रीज हो गया प्लस हम इसे मार्जिन दे सकते हैं फ्रॉम टॉप इक्वल टू 5 फ्रेम्स रिफ्रेश तो यह हमारे पास मार्जिन आ गई एंड वी विल मेक इट डिस्प्ले इन लाइन क्योंकि हमें लंबी सी लाइन नहीं चाहिए येय जो लंबी सी लाइन आ रही है पूरे के पूरे पेज पर हमें ये नहीं चाहिए हमें सिर्फ जितने पार्ट में हमारा कंटेंट है हम सिर्फ उतने को हाईलाइट करना चाहते हैं तो रिफ्रेश किया तो ये डिस्प्ले हमारा इनलाइन हो गया एंड इनलाइन एलिमेंट को मार्जिन फ्रॉम टॉप इस तरीके से देने की बजाय हमारा जो मैसेज कंटेनर है उसे हम देंगे अपना मार्जिन टॉप रिफ्रेश किया तो यह नीचे की तरफ आ गया साथ के साथ इसे हम कुछ पैडिट दे देते हैं लेट्स गिव इट अ पैडिट वन रेम रिफ्रेश किया एंड एक बॉर्डर रेडियस दे देते हैं लेट्स गिव इट अ बॉर्डर रेडियस ऑफ़ वन रिम थोड़ा सा कर्वड हो जाएगा सो बेसिकली दिस इज़ आवर टेक्स्ट जो शुरू में कह रहा है प्ले और मूव तो हमें अपनी मूव चलनी है हमें किसी भी एक को क्लिक करना है तो ये तो हो गया हमारा इनिशियल स्टाइलिंग वाला पार्ट जिसके अंदर हमने अपना अब जावास्क्रिप्ट के अंदर हम स्टार्ट करने वाले हैं अपने दो वेरिएबल के साथ एक वेरिएबल को हम यूज़ करेंगे हमारी यूजर का स्कोर ट्रैक करने के लिए यानी हमारा स्कोर ट्रैक करने के लिए एंड सेकंड वेरिएबल को हम यूज़ करेंगे अपने कंप्यूटर का स्कोर ट्रैक करने के लिए सो लेट्स मेक टू वेरिएबल फर्स्ट विल बी आवर यूजर स्कोर जिससे शुरुआत में हम सेट करेंगे टू 0 एंड दूसरा होगा हमारे कंप्यूटर का स्कोर जिसे भी शुरुआत में हम सेट करेंगे टू ़ अब ये तो हमारे यूजर एंड कंप्यूटर का स्कोर हो गया इसके अलावा हमें अपने जावास्क्रिप्ट के अंदर यह भी एक्सेस करना पड़ेगा कि कौन से वाले ऑप्शन को सेलेक्ट किया जा रहा है यानी हमारी जो तीन चॉइसेज हैं तो उन तीनों में से एक्चुअली किस चॉइस के ऊपर क्लिक किया जा रहा है उसे सिलेक्ट किया जा रहा है तो वो करने के लिए हम सारी की सारी चॉइसेज को एक्सेस करने वाले हैं तो सारी चॉइसेज को एक्सेस करने के लिए हम लिखेंगे लेट चॉइसेज या इसे कॉन्स्ट बना सकते हैं कॉन्स्ट चॉइसेज इज इक्वल टू डॉक्यूमेंट डॉट क्वेरी सेलेक्टर ऑल जिस भी एलिमेंट के पास हमारी क्लास होगी चॉइस यानी यहां से हमारा ये वाला डिव हमें मिलेगा ये वाला डिव हमें मिलेगा और ये वाला डिव हमें मिलेगा बेसिकली तीनों के तीनों डिब्स हमारे पास आ जाएंगे और हर एक डिव के ऊपर क्योंकि डिव और इमेज का साइज ऑलमोस्ट सेम है तो हर एक डिव के ऊपर हम अपने एक इवेंट लिसन को ऐड करने वाले हैं जो हमारे क्लिक इवेंट को ट्रैक करेंगे तो चॉइसेज डॉट फॉर ईच सारी की सारी चॉइसेज के लिए हम बेसिकली हर एक इंडिविजुअल चॉइस को सेलेक्ट करेंगे और हर इंडिविजुअल चॉइस के लिए हम ऐड करेंगे उस पर एक इवेंट लेसनर जो किसे ट्रैक करेगा जो हमारे क्लिक इवेंट को ट्रैक करेगा जिसके बेसिस पर हमारा ये वाला फंक्शन एरो फंक्शन रन होगा तो ये ऐसा सिंटेक्स है जिसको हमने लास्ट टाइम भी देखा था अपना लास्ट वाला गेम बिल्ड करते हुए इसमें बेसिकली सारे के सारे चॉइसेज से हम एक-एक इंडिविजुअल चॉइस डिव निकाल रहे हैं तो हर इंडिविजुअल डिव हमारे पास आ जाएगा इन फैक्ट इस इंडिविजुअल डिव को यहां पर कसोल ड लॉक करके हम प्रिंट भी कर सकते हैं लेट मी प्रिंट ऑल द चॉइसेज डिव एंड फिर हर एक डिव के ऊपर हम एक इवेंट लिसन ऐड कर देंगे कि जैसे ही हर एक चॉइस के ऊपर क्लिक किया जाए वैसे ही हमारे पास प्रिंट होकर आए कसोल डलॉग चॉइस वाज क्लिक्ड से सेव कर लेते हैं एंड एंड रिफ्रेश करते हैं साथ के साथ लेट मी ओपन द कंसोल विंडो तो कंसोल के अंदर हम आ गए अब यहां पर जैसे ही लेट्स सपोज मैंने अपनी रॉक वाली चॉइस के ऊपर क्लिक किया तो हमारे पास कोई एक्शन परफॉर्म नहीं हो रहा इसका रीजन इज प्रोबेबली बिकॉज हमने अपनी स्क्रिप्ट टैग को यूज नहीं किया अपनी app.js को कनेक्ट करने के लिए हमें ये लाइन अपने बॉडी टैग के एंड होने से जस्ट पहले लिखनी पड़ेगी इसको रिफ्रेश कर लेते हैं रिफ्रेश किया तो एकदम से क्या हो रहा है हमारे लिए हमारी चॉइसेज प्रिंट होके आ रही है तो यहां पर जब हम कसोल डलॉग हर एक इंडिविजुअल चॉइस प्रिंट करवा रहे हैं मतलब हम हर एक इंडिविजुअल चॉइस वाला डिव प्रिंट करवा रहे हैं तो ये हमारा फर्स्ट डिव आ गया जो हाईलाइट हो रहा है ये हमारा सेकंड डिव आ गया ये हमारा थर्ड डिव आ गया और इन्हीं सारे डिब्स के ऊपर हमने अपने इवेंट लिसन को ऐड किया है इसे एक बार हटा देते हैं सेव रिफ्रेश तो जैसे ही हम रॉक के ऊपर क्लिक करेंगे वैसे प्रिंट होकर आएगा चॉइस वाज क्लिक्ड पेपर के ऊपर क्लिक किया चॉइस वाज क्लिक्ड इसके ऊपर क्लिक किया चॉइस वाज क्लिक्ड इनफैक्ट हम हर एक ये जो डिव है इनकी आईडी को भी एक्सेस कर सकते हैं आईडी को एक्सेस करने के लिए बेसिकली हम यहां एक वेरिएबल बना सकते हैं कंस्ट आईडी या इसे कह देंगे चॉइस आईडी इज इक्वल टू हमारी चॉइस से हम कर देंगे गेट ट्रीबीयर्ड था जिसको हम ऑलरेडी पढ़ चुके हैं गेट एट्रिल की वैल्यू लेकर आएंगे और चॉइस आईडी को भी प्रिंट करेंगे कि हमारी चॉइस की एक्चुअल आईडी क्या है रिफ्रेश किया रॉक को क्लिक किया तो चॉइस वाज क्लिक्ड आईडी क्या थी रॉक पेपर को क्लिक किया चॉइस वाज क्लिक्ड आईडी क्या थी पेपर सीजर्स को क्लिक किया चॉइस वाज क्लिक्ड आईडी क्या थी सीजर्स तो इस तरीके से हमें ये भी पता चल रहा है कि कौन सी स्पेसिफिक चॉइस को हमने सिलेक्ट किया है और ये जो सिलेक्टेड चॉइस है ये बेसिकली हमारे यूजर की चॉइस है हमारे लिए इनफैक्ट इसे चॉइस आईडी की जगह वी कैन कॉल इट यूजर चॉइस ये हमारे यूजर की चॉइस है जिसको हम प्रिंट भी करवा सकते हैं तो इस तरीके से हमारे पास यूजर की चॉइस तो सिलेक्ट होकर आ गई अब हमारे यूजर की चॉइस हमारे पास है पर गेम को खेलने के लिए यूजर की चॉइस तो जरूरी है ही पर साथ के साथ कंप्यूटर को भी अपनी एक रैंडम चॉइस जनरेट करनी पड़ेगी और वो जनरेट करने के लिए हम एक और नया फंक्शन बना सकते हैं लेट्स कॉल इट प्ले गेम प्ले गेम में क्या करेंगे हम बेसिकली सबसे पहले तो कंप्यूटर से एक रैंडम चॉइस जनरेट करेंगे फिर कंपेयर करेंगे यूजर जीतेगा या कंप्यूटर जीतेगा एंड उस हिसाब से हम अपने स्कोर्स को अपडेट करने वाले हैं तो ये सारा का सारा जो काम होगा वो हमारे लिए प्ले गेम वाला फंक्शन परफॉर्म करेगा और प्ले गेम को यहां से हम कॉल कर सकते हैं मतलब जैसे ही हमने प्रिंट करवा दिया कि ठीक है हमने चॉइस को ट्रैक कर लिया यह हमारी यूजर की चॉइस थी उसके बाद हम प्ले गेम को कॉल कर सकते हैं और प्ले गेम में हम अपने यूजर की चॉइस को पास कर देंगे तो प्ले गेम को पता होगा कि यूजर की चॉइस क्या है यहां पर हम कसोल डलॉग करवा सकते हैं अपने यूजर की चॉइस वी कैन राइट यूजर चॉइस इज इक्वल टू दिस वैल्यू एंड इसे यहां से हटा लेते हैं और नेक्स्ट स्टेप हमारे लिए होगा वो होगा टू जनरेट कंप्यूटर चॉइस एंड यूजर की चॉइस तो हमारे पास आ गई अब मुझे कंप्यूटर की चॉइस को जनरेट कराना है तो कंप्यूटर की चॉइस को जनरेट कराने के लिए हम एक और नया फंक्शन बना लेते हैं एक चीज आप नोटिस करेंगे कि जब भी हम अपने गेम्स को बिल्ड कर रहे हैं लास्ट हमने टिकटक ट बिल्ड किया था इसको भी जब हम बिल्ड कर रहे हैं जो हमारे छोटे-छोटे काम है उन्हें हम फंक्शंस के अंदर डिवाइड कर रहे हैं दिस इन प्रोग्रामिंग इज कॉल्ड मॉड्यूलर वे ऑफ प्रोग्रामिंग मॉड्यूलर का मतलब होता है आप हर एक काम के लिए एक फंक्शन बनाओ एक फंक्शन का काम होगा एक ही काम करना एक ही एक्शन परफॉर्म करना इससे हमारे छोटे-छोटे मॉड्यूलर यानी छोटे-छोटे टुकड़े बन जाएंगे फंक्शंस के जो रीयूज बल कंपोनेंट्स होते हैं फॉर एग्जांपल एक बार हमने यह फंक्शन बना दिया जनरेट कंप्यूटर चॉइस तो एक बार इस फंक्शन को अगर हमने बना दिया तो फ्यूचर में हमें कभी भी अगर कंप्यूटर की कोई चॉइस जनरेट करनी होगी तो उसके लिए हमें सिंपली इस फंक्शन को कॉल करना पड़ेगा यानी इस फंक्शन के अंदर जो लॉजिक लिखने वाले हैं हम वो हम इस फंक्शन के अंदर भी लिख सकते थे हम प्ले गेम के अंदर भी सेम लॉजिक को लिख सकते थे पर हम लिखेंगे नहीं क्योंकि हम मॉड्यूलर वे ऑफ प्रोग्रामिंग को फॉलो करना चाहते हैं जिसमें रीयूज बल कंपोनेंट्स बनाएंगे यानी ऐसे फंक्शंस क्रिएट करेंगे जिनकी अगर फ्यूचर में हमें कभी दोबारा भी जरूरत पड़ गई तो उनको हम यूज कर पाए तो यहां पर जनरेट इसे भी शॉर्ट कर देते हैं थोड़ा सा कंप्यूटर चॉइस यह हम एक फंक्शन बना बनाने वाले हैं अब बेसिकली हमें क्या करना है रॉक पेपर सीजर्स इन तीनों में से हमारा जो कंप्यूटर है वो रैंडम कुछ भी एक जनरेट करेगा तो रैंडम कुछ भी एक जनरेट करवाने से पहले हम अपनी चॉइसेज को एक एरे के अंदर स्टोर कर सकते हैं तो इन्हें चॉइसेज कह सकते हैं इन्हें ऑप्शंस कह सकते हैं लेट ऑप्शंस इज इक्वल टू हमारे पास क्या-क्या ऑप्शन है हमारे पास रॉक है हमारे पास पेपर है एंड हमारे पास सीजर्स हैं अब इन्हें एरे के अंदर क्यों मैंने स्टोर करा है उसकी रीजनिंग अभी बस दो मिनट के अंदर मैं आपको समझा ने वाली हूं क्योंकि एज सच जावास्क्रिप्ट के अंदर कोई स्ट्रेट फॉरवर्ड तरीका नहीं है बहुत सारी स्ट्रिंग से कोई भी रैंडम स्ट्रिंग निकालने का लेकिन जावास्क्रिप्ट के अंदर एक काफी वेल नोन फ्रीक्वेंसी मैथ नाम की एक चीज होती है जावास्क्रिप्ट के अंदर जिसके पास एक रैंडम नाम का मेथड होता है और ये रैंडम नाम का मेथड क्या करता है जीरो से लेके वन के बीच में कोई भी एक रैंडम वैल्यू जनरेट करता है जैसे इसे यहां पर एक बार ट्राई करके देखते हैं इफ आई राइट मैथ डरम तो क्या होगा कोई भी एक रैंडम नंबर जनरेट होके आएगा इसे थोड़ा सा क्लियर कर लेते हैं स्क्रीन को मैथ डॉट रैंडम से एक रैंडम नंबर जनरेट होकर आएगा इफ आई डू इट अगेन दूसरा रैंडम नंबर आएगा इफ आई डू इट अगेन दूसरा रैंडम नंबर आएगा एंड आप नोटिस करेंगे सारे के सारे नंबर्स अलग-अलग हैं ये 99 से स्टार्ट हो रहा है ये 56 से स्टार्ट हो रहा है ये 09 से स्टार्ट हो रहा है ये 95 से स्टार्ट हो रहा है तो ये सारे के सारे जो नंबर्स है इवन दो हम फंक्शन सेम कॉल कर रहे हैं पर हर बार नंबर हमारे लिए अलग जनरेट हो रहा है तो हम क्या कर सकते हैं मैथ रैंडम की हेल्प से हम रैंडम नंबर होल नंबर भी जनरेट कर सकते हैं उसका एक ट्रिक होता है और जब हम रैंडम होल नंबर जनरेट कर देंगे तो उसके बेसिकली हम अपने एरे के लिए एक इंडेक्स की तरह ट्रीट करेंगे तो स्ट्रिंग्स रैंडम जनरेट करना पॉसिबल नहीं है लेकिन नंबर जनरेट करना पॉसिबल है और एरे के अंदर नंबर क्या बन सकता है एरे के अंदर नंबर इंडेक्स बन सकता है इसीलिए वीी हैव स्टोर्ड आवर ऑप्शंस इन द फॉर्म ऑफ एन एरे अब यहां पर ये जो रैंडम नंबर्स हैं ये हमेशा रो से लेके वन के बीच में ही जनरेट होते हैं तो सबसे पहले तो हमें देखना है कि अभी ये रो से लेके वन के बीच में जनरेट हो रहे हैं हमें इन्हें किस रेंज में जनरेट कराना है हमें इसे जीरो से लेके टू की रेंज में जनरेट करवाना है तो उसके लिए व्हाट वी कैन राइट हम मैथ डॉट रैंडम जब भी लिख रहे हैं तो जो भी हमारे पास नंबर आएगा उसे हम मल्टीप्लाई कर देंगे थ्री के साथ तो हमारा जो भी नंबर आया पहले वो कोई नॉर्मल नंबर आता है रो से वन की रेंज में अब वो थ्री से मल्टीप्लाई हो गया तो कोई भी नंबर जो वन से छोटा है अगर थ्री से मल्टीप्लाई हो जाता है तो वो जीरो से टू की रेंज में आ जाता है दोबारा से अगर जनरेट करवाएंगे तो दोबारा 2 पट समथिंग इस बार 0 पॉइंट समथिंग इस बार 0 प समथिंग 2 प समथिंग 0 पट समथिंग 0 प समथिंग तो 0 पट समथिंग 1 पॉट समथिंग या 2 पॉट समथिंग इसी रेंज में हमारा नंबर अब जनरेट हो जाएगा जब हम उसे थ्री से मल्टीप्लाई कर देंगे अगर हमें रो से नाइन की रेंज में नंबर्स चाहिए तो हमें सिंपली इसे 10 से मल्टीप्लाई करना पड़ेगा 10 से मल्टीप्लाई करेंगे 7 पॉइंट समथिंग आ गया 5 पॉइंट समथिंग आ गया 6 पॉ समथिंग आ गया 2 पॉ समथिंग आ गया 99 पॉट समथिंग आ गया तो हमेशा जिस भी नंबर से हम मैथ रट रैंडम को मल्टीप्लाई कर देते हैं उससे एक नंबर पहले वाले तक हम जीरो से लेके उससे रेंज तक नंबर को जनरेट कर सकते हैं एंड ये जो बाद वाले डेसिमल्स है इनकी एस सच हमें जरूरत नहीं है तो इन्हें रिमूव करने के लिए भी मैथ के अंदर हमारे पास एक और फंक्शन होता है हम बेसिकली लिख सकते हैं मैथ डॉ फ्लोर मैथ डॉ फ्लोर से क्या होगा हमारी डेसीमल वैल्यू सारी की सारी हट जाएंगी एंटर किया रो आ गया एंटर किया नाइन आ गया एट आ गया फोर आ गया सेन आ गया फाइव आ गया रो आ गया टू आ गया तो अब ये वाली लाइन क्या करेगी ये वाली लाइन हमारे लिए रो से लेकर नाइन तक कोई भी एक रैंडम नंबर होल नंबर जनरेट करेगी पर हमें रो से लेकर थ्री तक चाहिए तो उसके लिए हम यहां पर इसे मल्टीप्लाई कर सकते हैं विद थ्री तो टू आ गया फिर टू आ गया फिर वन आ गया रो आ गया टू आ गया टू आ गया टू टू एंड इस तरीके से हमारे पास रैंडम 0 1 2 इन तीनों में से कोई भी एक रैंडम नंबर जनरेट हो जाएगा और ये जो नंबर जनरेट हुआ है इसे हम ट्रीट कर सकते हैं एज आवर रैंडम इंडेक्स जिससे हमें चॉइस को या ऑप्शन को सेलेक्ट करने में हेल्प मिलेगी तो रैंडम नंबर जनरेट करने के लिए हम लिख सकते हैं मैथ डॉ फ्लोर उसके अंदर मैथ डॉट रैंडम मल्टीप्ला बाय 3 एंड इसे यहां स्टोर करा सकते हैं कंस्ट रैंडम इंडेक्स इज इक्वल टू दिस वैल्यू और हम हमारी चॉइस क्या बन जाएगी फाइनल चॉइस यानी कंप्यूटर की चॉइस क्या बन जाएगी यहां से रिटर्न कर देंगे हमारे कंप्यूटर की चॉइस व्हिच इज बेसिकली ऑप्शंस के अंदर जो भी रैंडम इंडेक्स पर वैल्यू आ रही है तो ये हमारे कंप्यूटर की चॉइस होगी जो रिटर्न करके हम अपने गेम वाले प्ले गेम वाले फंक्शन को भेज देंगे तो यहां से एक वेरिएबल हम ले सकते हैं कंस्ट कंप्यूटर चॉइस जैसे यूजर चॉइस था हमारे पास वैसे ही अब कंप्यूटर चॉइस आ जाएगी कौन देगा जनरेट कंप्यूटर चॉइस वाला ये फंक्शन एंड फिर जैसे यहां यूजर चॉइस को हम प्रिंट करवा रहे वैसे ही कंप्यूटर चॉइस को हम प्रिंट करवा सकते हैं सो दिस इज गोइंग टू बी कंप्यूटर चॉइस सेव किया रिफ्रेश कर लेते हैं जैसे ही हम रॉक को क्लिक करेंगे वैसे क्या हुआ हमने तो रॉक को सिलेक्ट किया और कंप्यूटर ने रैंडम हमारे लिए सिजर जनरेट किया जैसे ही हम पेपर को सिलेक्ट करेंगे हमने तो पेपर को सेलेक्ट किया और कंप्यूटर ने रैंडम हमारे लिए रॉक को सेलेक्ट किया जैसे ही हम सिजर को सेलेक्ट करेंगे हमारी चॉइस तो सीजर्स थी पर कंप्यूटर की चॉइस क्या थी उसकी चॉइस भी सीजर्स थी तो हमें पता है ये वाला गेम तो ड्रॉ हो जाएगा क्योंकि दोनों तरफ से सिजर चूज हुआ है इस वाले गेम में कौन जीतेगा इस वाले गेम में हम जीतेंगे क्योंकि पेपर क्या करता है रॉक को कवर कर देता है इस वाले गेम में कौन जीतेगा इस वाले गेम में भी हम जीतेंगे क्योंकि रॉक क्या करेगा सिजर को तोड़ देगा तो इस तरीके से अब यूजर एंड कंप्यूटर दोनों के पास अपनी चॉइसेज हैं और कंप्यूटर क्या कर रहा है कंप्यूटर अपने लिए रैंडम चॉइसेज को जनरेट कर रहा है जो कंपलीटली रैंडम जनरेट हो रही है अब हमें दिखाना है कि जब यूजर एंड कंप्यूटर फाइट करेंगे तो एक्चुअली जीतने कौन वाला है तो वो फाइट करने के लिए हम अपनी एफ एल्स कंडीशंस को यूज कर सकते हैं सबसे पहले तो हम यह चेक कर लेते हैं कि जिस केस में हमारे यूजर की चॉइस इक्वल हो जाएगी हमारी कंप्यूटर की चॉइस के जब दोनों चॉइस इक्वल हो जाएंगी तो वो कौन सा गेम होगा तो वो हमारी ड्रॉ वाली कंडीशन हो जाएगी ड्रॉ कंडीशन के लिए हम एक और अलग से फंक्शन बना सकते हैं वी कैन कॉल इट ड्रॉ गेम इज इक्वल टू इट विल बी एन एरो फंक्शन जो प्रिंट करवाता है बेसिकली गेम वाज ड्रॉ इस तरीके की चीज बस कंसोल स्क्रीन के ऊपर प्रिंट करवा देगा तो यह हो गया हमारा ड्रॉ गेम जिसमें हम कॉल कर देंगे ड्रॉ गेम वाले अपने फंक्शन को सिर्फ इसे अभी के लिए टेस्ट करते हैं इसको को क्लिक किया ड्रॉ नहीं हुआ गेम दोबारा क्लिक किया इस बार भी ड्रॉ नहीं हुआ इस बार भी ड्रॉ नहीं हुआ जैसे ही ड्रॉ हो गया मतलब हमने भी रॉक चूज किया कंप्यूटर ने भी रॉक जनरेट किया गेम वाज ड्रॉ ये हमारे लिए प्रिंट होक आ गया नेक्स्ट अब फोकस करते हैं दूसरी कंडीशन पर यहां पर एल्स के अंदर आ जाते हैं एल्स के अंदर हम एक वेरिएबल क्रिएट कर सकते हैं यूजर विन यूजर विन को शुरू में हम रख लेते हैं ट्रू यूजर विन ट्रैक करेगा कि हमारा यूजर विन कर रहा है या नहीं कर रहा ट्रू कहने का मतलब है हमने अजूम किया हम जीत गए हैं अब हम अपनी कंडीशंस को चेक करना स्टार्ट करेंगे अगर हमारी यूजर की चॉइस लेट्स सपोज यूजर की चॉइस है रॉक तो कंप्यूटर की चॉइस क्या हो सकती है कंप्यूटर की चॉइस रॉक तो हो नहीं सकती क्यों क्योंकि रॉक होती तो गेम ड्रॉ ही हो जाता पहले ही तो इसीलिए हमें पता है कंप्यूटर की चॉइस रॉक तो नहीं हो सकती तो कंप्यूटर की चॉइस क्या-क्या हो सकती है कंप्यूटर ने या तो सीजर्स जनरेट किया होगा या उसने पेपर जनरेट किया हो था अब दोनों के लिए हम चेक कर सकते हैं यहां पर हम लिख सकते हैं कि कंप्यूटर की चॉइस अगर हमारे लिए पेपर थी तो कौन जीतेगा अगर कंप्यूटर की चॉइस पेपर थी तो हु इज गोइंग टू विन रॉक एंड पेपर में से हमारा कंप्यूटर जीतने वाला है यानी यूजर हारने वाला है तो उस केस में ये जो यूजर विन वेरिएबल है इसकी वैल्यू हम सेट कर देंगे टू फॉल्स यानी ये जो हमारा यूजर विन वेरिएबल है अगर कंप्यूटर ने पेपर दिया और यूजर ने रॉक दिया तो उस केस में हमारा कंप्यूटर जीत जाएगा और यूजर विन वेरिएबल के अंदर हम फॉल्स लिख देंगे लेकिन अगर कंप्यूटर ने सिजर दिया तो उस केस में रॉक के अगेंस्ट सिजर हार जाएगा और हमारा यूजर जीत जाएगा यानी दूसरे केस में हम ट्रू सेट कर देंगे यूजर विन को तो ये जो हमारा वेरिएबल है इसके अंदर हम ट्रैक कर रहे हैं यूजर जीतेगा या कंप्यूटर जीतेगा अगर कंप्यूटर की चॉइस पेपर थी यूजर हार जाएगा नहीं तो यूजर जीत जाएगा तो ये हमारा फर्स्ट केस हो गया हमारे सेकंड केस पर आ जाते हैं अगर यूजर की जो चॉइस थी दैट वाज इक्वल टू पेपर यूजर ने क्या किया पेपर सेलेक्ट किया तो कंप्यूटर की जो चॉइस है उसमें पेपर तो हो नहीं सकता नहीं तो गेम ड्रॉ हो जाता तो कंप्यूटर के पास दो ही चॉइस बचती है या तो कंप्यूटर ने रॉक चूज किया होगा या कंप्यूटर ने सीजर्स चूज किया होगा तो पहली चॉइस देखते हैं अगर कंप्यूटर की चॉइस हमारे पास सीजर्स होती अगर कंप्यूटर ने सीजर्स चूज किया होता तो उस केस में क्या होता पेपर और सीजर्स में कौन जीतेगा सजर जीतेगा तो यूजर विन क्या सेट हो जाता यूजर विन सेट हो जाता टू फॉल्स यानी यूजर हार जाता और दूसरे केस में जब हमारा कंप्यूटर रॉक को चूज करता है तो रॉक और पेपर में से पेपर जीतेगा यानी यूजर जीतेगा तो उस केस में इस वैल्यू को हम सेट कर देंगे टू ट्रू ये बेसिकली हम एक और एफएस यहां पर यूज़ कर सकते थे पर मैंने थोड़ा सा कंपैक्ट तरीका देखा है टर्नर स्टेटमेंट को उसी सेम लॉजिक को लिखने का एंड अब आ जाएगा हमारा तीसरा केस तीसरा केस क्या कहता है तीसरा केस कहता है कि यूजर ने या तो रॉक लिया होगा या पेपर लिया होगा या हमारे यूजर की चॉइस अब फाइनली क्या बचती है सीजर्स बचती है तो यूजर के पास तो सिजर है कंप्यूटर के पास क्या-क्या चॉइसेज बचती हैं अब कंप्यूटर के पास सीजर्स तो हो नहीं सकता नहीं तो ड्रॉ हो जाता गेम तो कंप्यूटर के पास या तो रॉक था या कंप्यूटर के पास पेपर था और यूजर के पास क्या है सीजर्स है तो अगर हमारे कंप्यूटर की चॉइस रॉक हो जाएगी जिस केस में कंप्यूटर की चॉइस रॉक है उस केस में यूजर हार जाएगा यानी सिजर से रॉक टकराएगा तो रॉक जीतेगा कंप्यूटर जीतेगा और सिजर से पेपर टकराएगा तो यूजर जीत जाएगा यानी सिजर जीत जाएगा तो इस केस में हम लिख देंगे ट्रू तो यहां पर हमारे जो यूजर विन की कंडीशन है दैट इज गोइंग टू बी इक्वल टू दिस अब जैसे ही हमारा यूजर विन डिसाइड हो गया वैसे ही हम अपने विनर को शो कर सकते हैं अपने विनर को शो करने के लिए बेसिकली हम अपने यूजर विन को पास कर सकते हैं कि हमारा यूजर जीता या नहीं जीता तो एक और नया फंक्शन बना लेते हैं लेट्स कॉल इट शो विनर इज इक्वल टू दिस वैल्यू यहां पर हमारे पास आएगा हमारा यूजर विन वेरिएबल अगर यूजर विन की वैल्यू ट्रू हो जाती है उस केस में हम लिखेंगे कसोल लॉग यू विन एल्स हम कसोल डलॉग करने वाले हैं यू लूज सेव कर लेते हैं इसे एंड रिफ्रेश कर लेते हैं अब स्टार्ट करते हैं गेम को जैसे ही हमने रॉक को सेलेक्ट किया हमारी चॉइस क्या थी रॉक कंप्यूटर की चॉइस क्या थी पेपर तो हम क्या कर गए लूज कर गए क्योंकि पेपर क्या करता है रॉक को कवर कर देता है तो उस केस में कंप्यूटर जीत गया गया और हम लूज कर गए नेक्स्ट एक और ट्राई करते हैं हमने सिजर को सेलेक्ट किया हमारी चॉइस क्या थी सीजर्स कंप्यूटर की चॉइस क्या थी रॉक सिजर क्या करता है रॉक से हार जाता है तो ओबवियसली रॉक जीतेगा तो हम लूज कर गए दोबारा से हमने सिजर सिलेक्ट किया तो इस बार हमारी चॉइस सिजर थी कंप्यूटर ने पेपर जनरेट किया और हम क्या कर गए हम विन कर गए तो इस तरीके से हमारे जो बैक एंड का लॉजिक है वो कंप्लीट वर्क कर रहा है अब ये जो सेम मैसेजेस हैं हमें यहां पर लेकर आने हैं अपने मैसेज वाले पैराग्राफ के अंदर लेकर आने हैं तो वो काम करने के लिए हम बेसिकली शो विनर वाले फंक्शन के अंदर ही वही काम कर सकते हैं अब हमें क्योंकि अपने मैसेज को चेंज करना है यानी index.htm के अंदर जाकर हम इस पैराग्राफ इस मैसेज को चेंज करना चाहते हैं तो इसे हमें एक्सेस करना पड़ेगा एक्सेस करने के लिए हम ऊपर यहां पर आकर कंस्ट अपने मैसेज पैराग्राफ को या इसे मैसेज ही कह देते हैं एक्सेस कर लेते हैं डॉक्यूमेंट डॉट क्वेरी सिलेक्टर एंड दिस इज गोइंग टू बी माय मैसेज यहां पर जैसे यूजर जीत जाता है यानी शो विनर वाले फंक्शन के अंदर जैसे ही यूजर विनर बन जाता है वैसे ही क्या होगा वैसे ही हम अपने मैसेज के अंदर या इनफैक्ट कलॉग के साथ कर लेते हैं मैसेज ड इनर टेक्स्ट को सेट कर देंगे यूजर या यू विन नहीं तो हम अपने टेक्स्ट को सेट करने वाले हैं टू यू लूज सेव एंड रिफ्रेश तो जैसे ही हमने गेम को प्ले किया इस बार गेम हमारा ड्रॉ हो गया तो बेसिकली ड्रॉ करने की कंडीशन को हमने सेट नहीं किया है सेम चीज हम यहां पर कर सकते हैं अपने मैसेज के लिए जैसे ही गेम ड्रॉ हो रहा है वैसे ही मैसेज को कर दो गेम वाज ड्रॉ प्ले अगेन समथिंग लाइक दिस सेव करते हैं रिफ्रेश करते हैं जैसे ही क्लिक किया वैसे ही क्या आया यहां पर हमारी चॉइस थी रॉक कंप्यूटर की चॉइस थी पेपर हम क्या कर गए लूज कर गए तो यहां मैसेज में आ गया यू लूज दोबारा क्लिक करेंगे दोबारा से हम लूज कर गए दोबारा क्लिक करेंगे दोबारा लूज कर गए एंड फाइनली वी विन कब विन किया जब हमने रॉक को सेलेक्ट किया कंप्यूटर ने सिजर जनरेट किया एंड वी विन इसी तरीके से हम लूज कर गए लूज विन विन विन लूज एंड यह हमारा वो वाली चॉइस आ गई जिसमें गेम हमारा ड्रॉ हो गया दो दोनों ने रॉक को सेलेक्ट किया तो गेम हमारा ड्रॉ हो गया अब इसी को कलर्स के थ्रू विजुअली और रिप्रेजेंट करने का तरीका होगा कि मैसेज में जैसे ही हम जीत जाते हैं बैकग्राउंड कलर को भी चेंज कर दें यानी मैसेज के अंदर स्टाइल के अंदर जाके हम अपने बैकग्राउंड कलर को सेट कर सकते हैं टू ग्रीन लेट्स सेट अ ग्रीन कलर जब हम विन कर जाते हैं एंड जब हम लूज कर जाते हैं हम अपने बैकग्राउंड कलर को सेट कर देंगे टू रेड एंड अगर हम ड्रॉ कर जाते हैं तो हमारा बैकग्राउंड कलर हमारा वही नॉर्मल कलर होगा जो स्टाइल सीएसएस के अंदर हमने बाय डिफॉल्ट सेट किया है एनी दिस कलर लेट अस कॉपी इट इन app.js यहां आके ड्रॉ गेम पे हमारा ये वाला कलर हो गया सेव किया रिफ्रेश किया इस बार विजुअली हमें चीजें और होती हुई दिखने वाली है जैसे ही रॉक को सेलेक्ट किया क्या आया यूजर चॉइस थी रॉक कंप्यूटर चॉइस थी रॉक गेम ड्रॉ हो गया दोबारा सेलेक्ट किया यूजर चॉइस थी रॉक कंप्यूटर की चॉइस थी पेपर तो पेपर क्या करेगा रॉक को कवर कर देगा कंप्यूटर जीत जाएगा हम लूज कर गए एंड वही मैसेज हमारे लिए रेड कलर में डिस्प्ले होकर आ गया दोबारा प्ले करेंगे इस बार हम जीत गए गए यानी यूजर ने हमने रॉक सिलेक्ट किया कंप्यूटर की चॉइस थी सीजर्स ओबवियसली रॉक जीत जाएगा यू विन वाला मैसेज आ गया और इस बार ग्रीन कलर में हमारा मैसेज हमारे लिए डिस्प्ले हो करा गया है तो कलर्स को हमने सेट कर लिया है साथ में इन फैक्ट कौन जीता कौन हारा यानी रॉक एंड सिजसपा प्रिंट करवा सकते हैं तो ये जो हमारा शो विनर वाला फंक्शन है इसे हम यूजर एंड कंप्यूटर की चॉइस भी पास कर सकते हैं इसे यूजर चॉइस दे देंगे इसे कंप्यूटर चॉइस दे देंगे दोनों को हम यहां पे आके एक्सेस कर सकते हैं दिस इज माय यूजर चॉइस दिस इज माय कंप्यूटर चॉइस एंड यहां जो मैसेज हम बड़ा सा लिखने की कोशिश कर रहे हैं यहां पर बेसिकली हम लिख सकते हैं यूजर चॉइस बीट्स कंप्यूटर चॉइस यानी यूजर ने कंप्यूटर को बीट कर दिया यही हमारा मैसेज है और इसी का रिवर्स यहां पर लिख सकते हैं यू लूज यहां हमारे कंप्यूटर की चॉइस लिख देते हैं एंड यह हमारी यूजर की चॉइस लिख देते हैं या इन फैक्ट इसे और डिस्क्रिप्टिव बनाने के लिए हम लिख सकते हैं योर दिस चॉइस बीट्स दिस और यहां पर लिख सकते हैं कंप्यूटर की जो चॉइस थी बीट्स योर चॉइस ताकि हमें पता चल जाए हमने क्या चूज किया था सेव किया रिफ्रेश किया प्ले योर मूव हमने अपनी मूव प्ले कर दिया गेम क्या हो गया ड्रॉ हो गया दोबारा प्ले करेंगे दोबारा गेम ड्रॉ दोबारा प्ले ओके बहुत ज्यादा ड्रॉ हो रहा है दोबारा प्ले किया इस बार हम जीत गए क्या आया यू विन योर रॉक बीट सीजर्स यानी हमने क्या किया था रॉक को सिलेक्ट किया था कंप्यूटर की चॉइस क्या थी सीजर्स थी व हमारे लिए प्रिंट होके आ गए कि हमने जो रॉक सेलेक्ट किया था उसने सिसस को बीट कर दिया दोबारा प्ले किया गेम इस बार ड्रॉ हो गया दोबारा प्ले किया यू लॉस्ट पेपर बीट्स योर रॉक यानी हमने रॉक को सेलेक्ट किया था और कंप्यूटर नेने पेपर जनरेट किया तो इसीलिए हम लूज कर गए तो हमारा कलर ये आ रहा है तो इस तरीके से हमारा प्रॉपर मैसेज है जिसे हम डिस्प्ले कर सकते हैं तो यहां पर हमने मैसेज को डिस्प्ले कराना सीख लिया प्रॉपर कलरिंग को हम चेंज कर पा रहे हैं अपनी चॉइसेज को हम सेलेक्ट कर पा रहे हैं नेक्स्ट जो चीज बचती है दैट इज टू अपडेट आवर स्कोर कि अपने स्कोर को किस तरीके से अपडेट करें बेसिकली अगर हमारा यूजर जीत जाता है तो उस केस में क्या होना चाहिए स्कोर अपडेट होना चाहिए यूजर का तो यहां पर जैसे ही यूजर जीतेगा हम क्या करेंगे यूजर स्कोर को प्लस प्लस कर देंगे एंड अपने यूजर स्कोर को एक्सेस भी कर लेते हैं यानी यहां पर यह जो हमारा स्कोर बोर्ड है इसके अंदर यह जो यूजर स्कोर वाला पैराग्राफ है एंड यह कंप्यूटर स्कोर वाला पैराग्राफ है इन्हें हम एक्सेस करने वाले हैं कॉन्स्ट यूजर स्कोर पैराग्राफ इन्हें लिख देते हैं क्योंकि यूजर स्कोर वेरिएबल हम ऑलरेडी बना चुके हैं इज इक्वल टू डॉक्यूमेंट डॉ क्वेरी सिलेक्टर दिस इज गोइंग टू बी माय यूजर स्कोर एंड इसी तरीके से हमारा एक कंप्यूटर स्कोर वाला पैराग्राफ भी होगा जहां पर हमारे पास कंप्यूटर स्कोर आ जाएगा तो इन्हें अपडेट करने के लिए हम यहां लिख सकते हैं यूजर स्कोर पैरा डॉट इनर टेक्स्ट इज इक्वल टू हमारा यूजर स्कोर तो ये तो जब यूजर जीतेगा यूजर स्कोर को अपडेट कर दो जब यूजर हारेगा तो कंप्यूटर स्कोर को अपडेट कर दो कंप्यूटर स्कोर अपडेट हो जाएगा और जो कंप्यूटर स्कोर पैराग्राफ है उसके अंदर हम कंप्यूटर स्कोर की न्यू वैल्यू को प्रिंट करवा देंगे यहां से कसोल डलॉग वाली जो स्टेटमेंट है इसे हम हटा सकते हैं सेव कर लिया ये ड्रॉ वाली स्टेटमेंट को भी हटा देते हैं सेव कर लिया एंड रिफ्रेश किया इस बार जैसे ही हमने चूज किया गेम ड्रॉ हो गया गेम ड्रॉ होता है तो उस कोर्स के अंदर कोई अपडेशन नहीं आएगी दोबारा चूज किया इस बार हम जीत गए हम जीत गए तो हमारा स्कोर अपडेट हो गया बाय वन दोबारा चूज किया दोबारा हम जीत गए दोबारा स्कोर अपडेट हो गया दोबारा चूज किया इस बार गेम ड्रॉ हो गया दोबारा किया गेम ड्रॉ हो गया दोबारा किया इस बार दोबारा हम जीत गए एंड फाइनली हम फर्स्ट टाइम हारे हैं तो कंप्यूटर जीत गया तो उसमें हमारे पास ये वाला मैसेज डिस्प्ले होकर आ गया तो इस तरीके से ऑलमोस्ट सारी चीजें हमने कर ली है एक बार अपने कोड की तरफ दोबारा देख लेते हैं लेट्स रिमूव द कसोल डलॉग स्टेटमेंट्स हमें अब ये चीजें प्रिंट करवाने की जरूरत नहीं है तो यह हमारा प्रॉपर गेम था जिसके अंदर हमने अपने यूजर एंड कंप्यूटर के स्कोर को ट्रैक किया उसके बाद हमने क्या किया अपने चॉइसेज को एक्सेस किया सारी की सारी चॉइसेज पर हमने एक इवेंट लिसन ऐड किया कि जैसे किसी भी चॉइस को सेलेक्ट किया जाए वैसे ही हमारे पास उस चॉइस की आईडी आ जाए एंड फिर हम गेम को प्ले करना स्टार्ट कर दें तो हमारे पास यूज़र चॉइस तो है ही कि यूज़र ने किसे सेलेक्ट किया उसके बाद हमने कंप्यूटर से चॉइस भी जनरेट करवा ली कंप्यूटर से चॉइस जनरेट करवाने के लिए हमने क्या किया इस फंक्शन को यूज़ किया बेसिकली रॉक पेपर सीजर्स यह हमारा एक एरे है इस एरे का एक रैंडम इंडेक्स हमने जनरेट किया यूजिंग मैथम जिसको हमने यूज़ करके अपनी कंप्यूटर की चॉइस जनरेट कराई उसे रिटर्न कर दिया वो कंप्यूटर की चॉइस हमारे पास जनरेट होकर आई यहां पर अब हमारे पास प्ले गेम में यूजर चॉइस है कंप्यूटर चॉइस है दोनों को फाइट करना है फाइट करने के लिए एफएस वाला लॉजिक लिखा यूजर चॉइस कंप्यूटर चॉइस सेम है तो गेम ड्रॉ कर दो अगर यूजर चॉइस रॉक है तो देख लो कि कंप्यूटर ने क्या चूज किया उसके हिसाब से यूजर जीतेगा या नहीं जीतेगा अगर चॉइस पेपर है तो फिर यूजर जीतेगा या नहीं जीतेगा तो वो वाला लॉजिक हमने खेला एंड ये लॉजिक बहुत ही आसान है हम सबको पता है रॉक पेपर सजस कैसे खेला जाता है एंड फाइनली हम अपने विनर को शो कर देंगे कि हमारा विनर कौन है क्या कंप्यूटर हमारा विनर था या फिर यूजर हमारा विनर था तो हम वो वेरिएबल पास ऑन कर देंगे हम यूजर की चॉइस एंड कंप्यूटर की चॉइस पास ऑन कर रहे हैं तो शो विनर के अंदर अगर हमारा यूजर जीतता है तो हमें उसके स्कोर को अपडेट करके दिखाना है एंड मैसेज को अपडेट करके दिखाना है अगर कंप्यूटर जीतता है तो कंप्यूटर के स्कोर को अपडेट करके दिखाना है और मैसेज को अपडेट करके दिखाना है और ड्रॉ वाले केस में हमें सिर्फ मैसेज को अपडेट करना है हमें स्कोर को अपडेट करने की जरूरत नहीं है सो दिस वाज ऑल अबाउट आवर रॉक पेपर सिज्वाइन को लिखा तो बेसिकली इसे स्टार्टिंग से हम प्ले कर सकते हैं इसके अंदर चाहे तो हम अपनी स्टाइलिंग वगैरह कोई भी चीज है जिसको चेंज कर सकते हैं बट जो बेसिक लॉजिक था दैट विल रिमन द सेम इसको क्लिक करेंगे हम हार गए दोबारा क्लिक करेंगे दोबारा कंप्यूटर जो है हमें बार-बार बीट किया जा रहा है बट फाइनली वीी विन देयर इज वन मोर विन इस बार गेम ड्रॉ हो गया कंप्यूटर जीत रहा है हम जीत रहे हैं ड्रॉ हो रहा है कंप्यूटर जीत रहा है ड्रॉ एंड इस तरीके से वी कैन कंटिन्यू प्लेइंग आवर गेम आई होप कि रॉक पेपर सेसस का ये मिनी प्रोजेक्ट बिल्ड करने में हमें मजा आया होगा इसके अंदर हमने काफी सारे डिफरेंट डिफरेंट अपने जावास्क्रिप्ट के कॉन्सेप्ट्स को यूज किया है इन कांसेप्ट को रिवाइज करते रहना स्पेशली इन कांसेप्ट को छोटे-छोटे प्रोजेक्ट के अंदर किसी ना किसी प्रैक्टिकल मीडियम के थ्रू प्रैक्टिस करते रहना बहुत इंपॉर्टेंट है ताकि इनको हम याद कर सके हाय एवरीवन और अब हम स्टार्ट करने वाले हैं जावास्क्रिप्ट के अंदर अपने नेक्स्ट चैप्टर के साथ जिसका नाम है क्लासेस एंड ऑब्जेक्ट्स अब क्लासेस एंड ऑब्जेक्ट्स प्रोग्रामिंग के अंदर काफी इंपॉर्टेंट कांसेप्ट है पर एक चीज एक डिस्क्लेमर मैं आपको यहां पर देना चाहती हूं कि जावास्क्रिप्ट के अंदर जब भी हम किसी प्रोजेक्ट को बिल्ड कर रहे होते हैं तो प्रोजेक्ट के अंदर किन-किन कांसेप्ट को किन-किन टेक्नोलॉजीज पर को हम यूज करने वाले हैं वो कंप्लीट डिपेंड करता है कि हम किस तरीके का प्रोजेक्ट बिल्ड कर रहे हैं फॉर एग्जांपल कोई ऐसा प्रोजेक्ट है जिसके अंदर क्लासेस एंड ऑब्जेक्ट्स की काफी ज्यादा जरूरत तो उसमें आप देखोगे कि हम बहुत सारी डिफरेंट डिफरेंट क्लासेस को बिल्ड करेंगे वहीं दूसरी तरफ कुछ ऐसे प्रोजेक्ट्स होते हैं जिसमें हमें क्लास बनाने की कोई जरूरत नहीं होती तो वहां पर हम क्लासेस को ज्यादा इंप्लीमेंट नहीं कर रहे होते बट इंटरव्यू पॉइंट ऑफ व्यू से यानी जब भी हम कहीं पर एज अ वेब डेवलपर एज अ फ्रंट एंड डेवलपर इंटरव्यूज देने जाते हैं तो वहां पर हमसे इस तरीके के कॉन्सेप्ट्स की जावास्क्रिप्ट में क्लासेस कैसे वर्क करती हैं ऑब्जेक्ट्स कैसे वर्क करती हैं प्रोटोटाइप्स क्या होते हैं इस तरीके के सवाल हम एक्सपेक्ट कर सकते हैं तो इसीलिए चैप्टर हमारे लिए इंपॉर्टेंट है ये कांसेप्ट हो सकता है किसी प्रोजेक्ट में काफी ज्यादा यूज़ हो और हो सकता है किसी दूसरे प्रोजेक्ट के अंदर उतने ज्यादा फ्रीक्वेंसी यूज ना हो एंड साथ के साथ इस चैप्टर के अंदर हम काफी सारे नए कीवर्ड्स देखेंगे अपने जावास्क्रिप्ट प्रोग्रामिंग से रिलेटेड अब सबसे पहले बात करने वाले हैं हम प्रोटोटाइप्स के बारे में प्रोटोटाइप से पहले छोटा सा अपना रिवाइज कर लेते हैं कि हमारी ऑब्जेक्ट्स क्या होती थी एक जावास्क्रिप्ट ऑब्जेक्ट इज एन एंटिटी हैविंग सम स्टेट एंड सम बिहेवियर्स यानी जावास्क्रिप्ट के अंदर ऑब्जेक्ट क्या होती है एक एंटिटी होती है एक ऐसी चीज होती है जिसके अंदर दो चीजें होती हैं प्रॉपर्टीज होती हैं एंड कुछ बिहेवियर्स होते हैं प्रॉपर्टीज कहने का मतलब कुछ वेरिएबल हमारी ऑब्जेक्ट के अंदर हम कुछ वेरिएबल को स्टोर कर सकते हैं साथ के साथ हमारी ऑब्जेक्ट के अंदर हमारे मेथड्स भी स्टोर हो सकते हैं यानी हमारे कुछ फंक्शंस हमारी ऑब्जेक्ट के अंदर आ सकते हैं इसका एक एग्जांपल हम देखने वाले हैं हमारे कोड के अंदर हमने जावास्क्रिप्ट नाम का फोल्डर बनाया हुआ है अपनी एक index.htm बनाई हुई है जिसके अंदर सिर्फ बॉयलर प्लेट कोड है और इसे हमने कनेक्ट किया अपनी app.js के साथ एंड इसी सेम फाइल को हमने अपने ब्राउजर पर खोल रखा है हम अभी कंसोल विंडो पर हैं इंस्पेक्ट करके एंड app.js के अंदर एक बार आ जाते हैं यहां पर हम अपनी एक नॉर्मल सी सिंपल सी ऑब्जेक्ट क्रिएट करने वाले हैं एक स्टूडेंट ऑब्जेक्ट तो एक ऑब्जेक्ट हमें ऑलरेडी क्रिएट करना आता है हम लिखते हैं कॉन्स्ट फिर जैसे हम किसी वेरिएबल का नाम लिखते हैं वैसे ही हम ऑब्जेक्ट का नाम लिख सकते हैं हम लिख सकते हैं कॉन्स्ट स्टूडेंट इज इक्वल टू एंड ऑब्जेक्ट बनाने के लिए हम अपने कर्ली ब्रेसस का यूज़ करते हैं अब जावास्क्रिप्ट के अंदर ऑब्जेक्ट बनाने के अलग-अलग तरीके होते हैं इस तरीके से ऑब्जेक्ट बनाना एक तरीका है बाद में जाके जब हम क्लासेस को पढ़ेंगे इसी चैप्टर के अंदर तो हम एक और तरीका जान रहे होंगे कि दूसरे तरीके से हम ऑब्जेक्ट्स को कैसे क्रिएट कर सकते हैं तो ये होता है डायरेक्ट वे ऑफ क्रिएटिंग एन ऑब्जेक्ट या हम इस ऑब्जेक्ट के अंदर स्टूडेंट नाम के ऑब्जेक्ट के अंदर कुछ-कुछ प्रॉपर्टीज लिख सकते हैं हमारी क्या प्रॉपर्टीज हो सकती हैं नेम हमारी एक प्रॉपर्टी हो सकती है या इसे हम फुल नेम कह सकते हैं कि हमारा जो स्टूडेंट है उसके लिए फुल नेम हमारी प्रॉपर्टी है फॉर एग्जांपल स्टूडेंट का नाम है श्रद्धा खाप ये हमारी एक प्रॉपर्टी होगी फिर कॉमा से हम कोई दूसरी प्रॉपर्टी लिख सकते हैं हम मार्क्स लिख सकते हैं लेट्स सपोज मार्क्स आर 94.4 तो ये क्या हो गई ये दो प्रॉपर्टीज हो गई हमारी ऑब्जेक्ट की पर इसके साथ में ऑब्जेक्ट के अंदर हम कुछ मेथड्स को भी डिफाइन कर सकते हैं मेथड्स को कैसे डिफाइन करते हैं दो तरीके होते हैं या तो हम मेथड का नाम लिख सकते हैं फॉर एग्जांपल यहां पर है एक मेथड है प्रिंट मार्क्स तो हम लिखेंगे कोलन एंड उसके बाद हम अपना एक फंक्शन क्रिएट कर सकते हैं इस तरीके से भी फंक्शन को क्रिएट किया जा सकता है नहीं तो हम चाहें तो एक एरो फंक्शन भी बना सकते हैं यहां पर हम लिखेंगे console.log मार्क्स इज इक्वल टू एंड यहां हम यूज कर लेंगे अपने मार्क्स नाम के वेरिएबल को जो हमारी ऑब्जेक्ट के अंदर ही अवेलेबल है एंड इसे कर देंगे सेव तो इस तरीके से हमारी एक ऑब्जेक्ट क्रिएट हो गई जिसके अंदर प्रॉपर्टीज भी हैं इन प्रॉपर्टीज को हम स्टेट भी कह देते हैं और दूसरा इसके अंदर फंक्शंस भी है जिनको हम अपने मेथड्स कहते हैं जिसको हम अपने ऑब्जेक्ट का बिहेवियर कह सकते हैं अब इस ऑब्जेक्ट को हम अपने वेब के ऊपर एक्सेस कर सकते हैं अपने कंसोल के अंदर पेज को रिफ्रेश करने के बाद आई कैन प्रिंट स्टूडेंट और जैसे ही एंटर किया हमारे लिए ऑब्जेक्ट प्रिंट होकर आ गई तो इस ऑब्जेक्ट के अंदर हमें दिख रहा है हमारा फुल नेम आ रहा है ये एक प्रॉपर्टी है हमारे मार्क्स आ रहे हैं एक फंक्शन हमारे लिए आ रहा है प्रिंट मार्क्स हम चाहे तो स्टूडेंट के लिए सिर्फ उसका फुल नेम भी प्रिंट करवा सकते हैं स्टूडेंट के लिए हम चाहें तो सिर्फ उनके मार्क्स भी प्रिंट करवा सकते हैं और स्टूडेंट के लिए अपने फंक्शन को भी कॉल कर सकते हैं लेट्स कॉल आर प्रिंट मार्क्स फंक्शन यहां मार्क्स इज नॉट डिफाइंड आ रहा है तो इसे हम कर लेंगे दिस डॉट मार्क्स सेव रिफ्रेश एंड प्रिंट मार्क्स जैसे ही करेंगे तो इस बार प्रिंट होकर आएगा मार्क्सस = 94.4 अब सबसे पहली चीज क्योंकि हमने एक दिस नया कीवर्ड यूज़ किया है मैंने आपको पहले ही बताया था इस चैप्टर के अंदर हम बहुत सारे नए कीवर्ड्स को यूज़ करने वाले हैं अब ये दिस क्या नया कीवर्ड होता है दिस का मतलब होता है जिस भी चीज की हम बात कर रहे हैं प्रोग्रामिंग के अंदर तो जावास्क्रिप्ट के अंदर जब भी किसी ऑब्जेक्ट के अंदर हम दिस को यूज़ कर रहे हैं तो यहां पर दिस का मतलब है वही ऑब्जेक्ट तो यहां पर दिस का दिस डॉट मार्क्स लिखने का बेसिक मतलब है कि हम लिखना चाह रहे हैं स्टूडेंट डॉट मार्क्स तो जहां भी हमने दिस लिख दिया मतलब हम इस ऑब्जेक्ट की बात कर रहे हैं उस ऑब्जेक्ट के अंदर तो हम अपनी मार्क्स वाली ये जो प्रॉपर्टी है इसको डायरेक्टली एक्सेस नहीं कर सकते हम इसको दिस के थ्रू एक्सेस कर सकते हैं तो इस तरीके से हमने एक नॉर्मल ऑब्जेक्ट क्रिएट कर ली अपनी प्रोग्रामिंग के अंदर अपने कोड के अंदर और इस तरीके की हम कई सारी डिफरेंट डिफरेंट ऑब्जेक्ट्स हैं जिनको क्रिएट कर सकते हैं अब ये तो हो गई हमारी एक सिंपल साफ-सुथरी ऑब्जेक्ट एक ऑब्जेक्ट क्या होती है हमने ऑलरेडी पढ़ लिया इट इज एन एंटिटी हैविंग स्टेट यानी प्रॉपर्टीज एंड कुछ बिहेवियर यानी मेथड्स पर हर ऑब्जेक्ट जो भी जावास्क्रिप्ट के अंदर बनती है उसके अंदर एक स्पेशल प्रॉपर्टी अपने आप ऑटोमेटिक क्रिएट होती है जैसे यहां पर हम अपनी ऑब्जेक्ट को देखें इफ आई रिफ्रेश द पेज एंड आई प्रिंट माय स्टूडेंट ऑब्जेक्ट तो स्टूडेंट ऑब्जेक्ट के अंदर एक स्पेशल प्रॉपर्टी है व्हिच इज कॉल्ड प्रोटोटाइप एंड ये प्रोटोटाइप अपने आप में क्या है प्रोटोटाइप अपने आप में एक ऑब्जेक्ट है और प्रोटोटाइप के अंदर क्या है प्रोटोटाइप के अंदर कई सारे डिफरेंट मेथड्स डिफरेंट प्रॉपर्टीज हमें देखने को मिलते हैं जैसे इज प्रोटोटाइप ऑफ टू स्ट्रिंग फॉर एग्जांपल टू स्ट्रिंग जो है ये दिख रहा है यहां पर कि एक फंक्शन है तो अगर मैं लिखूं स्टूडेंट डॉट प्रिंट मार्क्सस जैसे ही स्टूडेंट डॉट प्रिंट मार्क्स लिखेंगे हमारे लिए हमारा जो प्रिंट मार्क्स नाम का फंक्शन हमने बनाया था वो प्रिंट होकर आ जाएगा पर अगर यहां मैं लिखूं स्टूडेंट ड एसी तो हमारे पास आ जाएगा अनडिफाइंड क्योंकि एसी स्टूडेंट के अंदर हमने कभी डिफाइन ही नहीं किया बट इफ आई राइट स्टूडेंट डट स्ट्रिंग इस तरीके से प्रिंट करवाया तो यहां एक फंक्शन प्रिंट होकर आ रहा है बट हमने तो स्टूडेंट ऑब्जेक्ट के अंदर कभी टू स्ट्रिंग वाला फंक्शन क्रिएट ही नहीं किया तो स्टूडेंट को ये टू स्ट्रिंग वाला फंक्शन मिल कहां से रहा है तो स्टूडेंट को ये टू स्ट्रिंग वाला फंक्शन हमारी इस प्रोटोटाइप ऑब्जेक्ट से मिल रहा है तो जब भी हम कोई भी जावास्क्रिप्ट की ऑब्जेक्ट क्रिएट करते हैं उसके अंदर हमेशा एक स्पेशल प्रॉपर्टी होती है कॉल्ड प्रोटोटाइप और ये जो प्रोटोटाइप प्रॉपर्टी होती है ये अपने आप में एक ऑब्जेक्ट है यानी एक ऑब्जेक्ट के अंदर एक और बाय डिफॉल्ट ऑब्जेक्ट आ रही है कॉल्ड प्रोटोटाइप और इसके अंदर कुछ स्पेशल प्रॉपर्टीज होंगी इसके अंदर कुछ स्पेशल हमारे पास मेथड्स होंगे यानी बिहेवियर्स होंगे अब प्रोटोटाइप होने का मैं आपको प्रैक्टिकल इंप्लीमेंटेशन बताने वाली हूं फॉर एग्जांपल वी क्रिएट एन एरे कॉल्ड अ इस एरे के अंदर हमारे फ्रूट्स है एप्पल है मैंगो है बनाना है तो इस तरीके से एक एरे हमने बना लिया जिसके अंदर हमारे पास काफी सारे डिफरेंट डिफरेंट फ्रूट्स हैं अब जब भी हम एरे का टाइप डिस्कस करते हैं हमने पहले बात की थी कि हमारा जो टाइप ऑफ एरे होता है वो एरे नहीं होता वो नंबर्स नहीं होता वो स्ट्रिंग्स नहीं होता वो क्या होता है ऑब्जेक्ट होता है तो जावास्क्रिप्ट के अंदर एरे इंटरनली एक ऑब्जेक्ट होती है तो अगर मैं अपने एरे को प्रिंट करवाती हूं तो उसके अंदर हमारे इंडा इसस आते हैं हमारी लेंथ आती है पर साथ के साथ एरे के अंदर ऑटोमेटिक एक प्रोटोटाइप आता है और ये क्या प्रोटोटाइप है ये एरे टाइप का ही प्रोटोटाइप है जिसके अंदर काफी सारे डिफरेंट डिफरेंट मेथड्स एंड प्रॉपर्टीज होते हैं अब जब भी हम जावास्क्रिप्ट के अंदर किसी एरे को डिफाइन करते हैं मैंने तो एरे के अंदर पुश करने के लिए कोई फंक्शन क्रिएट नहीं किया पॉप करने के लिए कोई फंक्शन क्रिएट नहीं किया पर फिर भी एरे के अंदर डॉट पुश करके इफ आई राइट लीची तो उससे क्या होगा मेरे एरे के अंदर एक और नया एलिमेंट पुश हो जाएगा पर इस फंक्शन को पुश फंक्शन को मैंने कभी डिफाइन ही नहीं किया तो ये एगजैक्टली आ कहां से रहा है तो एरे ऑब्जेक्ट के अंदर ये जो हमारा पुश होता है पॉप होता है डिफरेंट डिफरेंट फंक्शंस होते हैं प्रॉपर्टीज होते हैं जो बाय डिफॉल्ट बन जाते हैं जिनको हम यूज कर रहे होते हैं वो कहां से आते हैं वो हमारी इस प्रोटोटाइप ऑब्जेक्ट से आते हैं तो एक्चुअली हमारी जितनी भी सारी की सारी ऑब्जेक्ट्स होती हैं जावास्क्रिप्ट के अंदर वो अपनी एक बेसिक प्रोटोटाइप ऑब्जेक्ट से कुछ-कुछ मेथड्स एंड प्रॉपर्टीज को इन्हेरिटेंस बेसिकली प्रोटोटाइप पहले से बना होता है जिसके अंदर कुछ-कुछ प्रॉपर्टीज एंड मेथड्स होते हैं जो इन जनरल होते हैं और फिर जब भी कोई ऑब्जेक्ट बनती है तो उसके अंदर प्रोटोटाइप के जो जनरल मेथड्स जनरल प्रॉपर्टीज होते हैं वो बाय डिफॉल्ट इन्हेरिटेंस क्रिप्ट के अंदर कोई ऑब्जेक्ट बनती है उसके अंदर बाय डिफॉल्ट हमें प्रोटोटाइप ऑब्जेक्ट देखने को मिलता है अब हम अपने खुद के प्रोटोटाइप्स भी बना सकते हैं फॉर एग्जांपल हमने एक एक नई ऑब्जेक्ट बनाई और इसे हम नाम दे देते हैं एंप्लॉई हमारी एक एंप्लॉई ऑब्जेक्ट है जिसके अंदर एक फंक्शन है कैलकुलेट टैक्स हर एंप्लॉई का अपना एक टैक्स डिडक्ट होता है तो हम यहां लिख देंगे कि टैक्स रेट इज 10 पर तो इस तरीके का कुछ हमने यहां पर लिख दिया कि कैलकुलेट टैक्स ये जो फंक्शन है इस एंप्लॉई ऑब्जेक्ट के लिए इवोक हो जाएगा जिसमें ये चीज हमारे लिए प्रिंट होक आएगी इसे रिफ्रेश कर लेते हैं और हम प्रिंट करवा सकते हैं एंप्लॉई एंप्लॉई डॉट कैलकुलेट टैक्स तो इस तरीके हमारे पास ये चीज प्रिंट होकर आ जाएगी अब फॉर एग्जांपल हमारी कंपनी के अंदर एक नए एंप्लॉई आते हैं इनका नाम है करण अर्जुन तो उनके लिए हम क्या करेंगे एक नई ऑब्जेक्ट बनाएंगे उनका डाटा स्टोर कराने के लिए फॉर एग्जांपल द नेम इज करण अर्जुन दिस इज आवर न्यू एंप्लॉई अब करण अर्जुन की कुछ सैलरी होगी तो उनकी सैलरी अमाउंट है जिसको हम सेव करवा सकते हैं अच्छा एक चीज आपने यहां पर नोटिस की होगी जब मैंने कैलकुलेट टैक्स लिखा तो यहां मैंने बिना फंक्शन के नाम से कैलकुलेट टैक्स को डायरेक्टली लिख दिया तो बेसिकली यहां पर हम इस तरीके से लिखते इसको कैलकुलेट टैक्स वन अगर मैं कहूं या फिर हम लिखते ककलेट टैक्स टू और फंक्शन जिसके अंदर इस तरीके से कुछ काम हो रहा है तो ये एंड ये दोनों ही सही फॉर्मेट है यानी इस तरीके से भी किसी भी ऑब्जेक्ट के अंदर हम अपने फंक्शन को डिफाइन कर सकते हैं मेथड को डिफाइन कर सकते हैं और इस तरीके से भी हम अपने मेथड को डिफाइन कर सकते हैं अब ये जो तरीका है क्योंकि इसके अंदर कुछ एक्स्ट्रा वर्ड्स कुछ एक्स्ट्रा कीवर्ड्स हमें डिफाइन करने पड़ रहे हैं तो एक सिंपल तरीका होता है ऑब्जेक्ट के अंदर अपने फंक्शन को डिफाइन करने का दिस तो हम कैलकुलेट टैक्स को अपने फंक्शन को अपने मेथड को इस तरीके से लिख सकते हैं एक ऑब्जेक्ट के अंदर इवन दो ये भी करेक्ट तरीका है आप इस तरीके से लिखते हैं तो भी एरर नहीं आएगा बट जनरली जब भी आप प्रोग्रामिंग में देखोगे हम इस तरीके से चीजों को लिख रहे होते हैं तो ये तो हो गया हमारे एक फंक्शन अब करण अर्जुन नए एंप्लॉई आए हैं जिनकी कुछ सैलरी होगी सैलरी फॉर एग्जांपल हमारी है 50000 अब यहां पर अगर हमारा कोई भी नया एंप्लॉई आता है उसके पास कैलकुलेट टैक्स करने का फंक्शन होना चाहिए तो अभी तो अगर हम करण अर्जुन को प्रिंट करवाएं तो उनके पास ये जो ऑब्जेक्ट है सिफिक सैलरी है इसके अंदर और प्रोटोटाइप है जिसके अंदर बाय डिफॉल्ट जो हर एक ऑब्जेक्ट के अंदर फं फंस आते हैं वो सारे फंक्शंस यहां पर हमें देखने को मिल जाएंगे पर इसमें कोई कैलकुलेट सैलरी वाला फंक्शन नहीं है तो अगर इस ऑब्जेक्ट के हम फंक्शंस यानी मेथड्स एंड प्रॉपर्टीज को इस ऑब्जेक्ट के अंदर यूज करना चाहते हैं तो हम करण अर्जुन के अंदर प्रोटोटाइप की तरह अपने एंप्लॉई को लिख सकते हैं तो उसके लिए हमारा सिंटेक्स होता है करण अर्जुन यानी अपनी ऑब्जेक्ट का नाम डॉट अंड प्रोटो अंडर अंडर तो ये जो हमारा अंडरस्कोर अंडरस्कोर प्रोटो अंडरस्कोर अंडर होता है दिस इ बेसिकली यूज्ड टू सेट अ प्रोटोटाइप इसकी हेल्प से हम अपने प्रोटोटाइप को सेट कर सकते हैं और प्रोटोटाइप को सेट करने का क्या मतलब होता है कि वो जो दूसरी ऑब्जेक्ट है जिसको हम प्रोटोटाइप बना रहे होंगे इस ऑब्जेक्ट के फंक्शंस हम अपनी फर्स्ट ऑब्जेक्ट के अंदर यूज़ कर पाएंगे तो यहां पर हमने लिख दिया ऑब्जेक्ट टड प्रोटोटाइप इज इक्वल टू हमारी ऑब्जेक्ट वन तो जिस ऑब्जेक्ट के फंक्शंस को हम यूज़ करना चाहते हैं उसको हम दूसरी ऑब्जेक्ट का प्रोटोटाइप सेट कर देंगे जैसे इसको सेव करेंगे एंड रिफ्रेश करेंगे तो इस बार हम करण अर्जुन को प्रिंट करवाएंगे तो उसके अंदर सैलरी तो है ही बट इफ वी लुक एट द प्रोटोटाइप तो प्रोटोटाइप ऑब्जेक्ट के अंदर अब एक नया फंक्शन आ गया कॉल्ड कैलकुलेट टैक्स और हम चाहें तो करण अर्जुन के अंदर डायरेक्टली अब अपने कैलकुलेट टैक्स को यूज़ कर सकते हैं तो हमारे पास टैक्स रेट आ जाएगा तो इससे जो एंप्लॉई के अंदर ऑलरेडी हमने फंक्शंस बनाए हुए हैं वो फंक्शंस हमें बार-बार इस एंप्लॉई के लिए नहीं लिखने पड़ेंगे कल को हो सकता है कंपनी के अंदर पांच और नए एंप्लॉयज आ जाए फॉर एग्जांपल दिस वाज आवर फर्स्ट एंप्लॉई ये हमारा सेकंड एंप्लॉई हो गया ये थर्ड एंप्लॉई हो गया ये फोर्थ एंप्लॉई हो गया इसे कह देते हैं करण अर्जुन टू दिस इज़ थ्री दिस इज़ फोर सबकी अलग-अलग सैलरी हो सकती है बट अभी इसलिए उसे चेंज नहीं कर रहे तो यहां पर हर किसी एंप्लॉई के लिए कैलकुलेट टैक्स नाम का फंक्शन होना चाहिए पर उस फंक्शन को क्या हमें बार-बार लिखना पड़ेगा ऑब्जेक्ट्स के अंदर नहीं हमें बार-बार लिखने की जरूरत नहीं है हम सिंपली क्या कर सकते हैं हर एक ऑब्जेक्ट के प्रोटो के अंदर असाइन कर सकते हैं अपनी एंप्लॉई क्लास को और जैसे ही इन सबके अंदर एंप्लॉई क्लास हमारी असाइन होकर आ गई सबके अंदर कैलकुलेट टैक्स नाम का फंक्शन आ गया अब अगर हम देखें इफ आई डू इट फॉर करण अर्जुन 3 लेट्स से या इसे प्रिंट करवा कर ही देख लेते हैं तो इनके अंदर प्रोटोटाइप के अंदर कैलकुलेट टैक्स नाम का ये फंक्शन आ जाएगा और इस फंक्शन को हम डायरेक्टली इवोक भी कर सकते हैं यूजिंग कैलकुलेट टैक्स तो ये हमारे लिए चीज प्रिंट होकर आ जाएगी तो ये प्रोटोटाइप एगजैक्टली क्या होता है प्रोटोटाइप इज अ स्पेशल प्रॉपर्टी जो हर एक जावास्क्रिप्ट ऑब्जेक्ट के अंदर होती है और इस प्रोटोटाइप का अगर टाइप पूछे तो इट इज एक्चुअली अ रेफरेंस टू एन ऑब्जेक्ट या तो ये नल होगा कि प्रोटोटाइप है ही नहीं या फिर मोस्टली केसेस में ये हमारा रेफरेंस होगा एक ऑब्जेक्ट का यानी हमने कोई एंप्लॉई नाम की ऑब्जेक्ट बनाई हुई है हम कोई करण अर्जुन नाम का नया एंप्लॉई लेके आ रहे हैं और उसके अंदर प्रोटोटाइप में अगर एंप्लॉय आ रहा है तो वो एंप्लॉई का रेफरेंस होगा एड्रेस होगा डायरेक्टली हम एंप्लॉई को एक तरीके से एक्सेस कर पा रहे होंगे अपनी नई ऑब्जेक्ट के अंदर अब अगर हम फर्स्ट टाइम क्लासेस एंड ऑब्जेक्ट्स के टॉपिक को पढ़ रहे हैं तो ये चीज थोड़ा सा समझने में डिफिकल्ट लग सकती है थोड़ा सा समझने में इसको टाइम लग सकता है बट आई इंश्योर यू कि धीरे-धीरे जैसे-जैसे क्लासेस एंड ऑब्जेक्ट्स का हम पूरा चैप्टर कंप्लीट करेंगे हमें सारे के सारे कॉन्सेप्ट्स क्लियर हो जाएंगे कि क्या एगजैक्टली मतलब होता है ऑब्जेक्ट का क्या एगजैक्टली मतलब होता है प्रोटोटाइप का क्या एगजैक्टली मतलब होता है क्लासेस का तो आई होप कि अभी तक प्रोटोटाइप का मतलब हमें क्लियर हो गया है कि प्रोटोटाइप एगजैक्टली क्या है और कैसे ऑब्जेक्ट के अंदर अपीयर करता है अब एक और चीज हम यहां पर बात करने वाले हैं अब फॉर एग्जांपल हमारे पास करण अर्जुन वाली अपनी ऑब्जेक्ट थी और करण अर्जुन की क्योंकि सैलरी हाई है तो हो सकता है इनके लिए टैक्स रेट कुछ और हो नॉर्मल एंप्लॉयज के लिए कंपनी के नॉर्मल एंप्लॉई के लिए हो सकता है टैक्स डिडक्शन 10 पर हो हो सकता है करण अर्जुन के लिए टैक्स डिडक्शन 20 पर होना है तो हम क्या कर सकते हैं करण अर्जुन के लिए एक और यहीं पर फंक्शन बना सकते हैं और उसके अंदर हम क्या करेंगे बता देंगे कि टैक्स रेट इज 20 पर अब यहां पर एक हमारे में सवाल आ सकता है क्योंकि करण अर्जुन के प्रोटो में एंप्लॉई हैं तो अब करण अर्जुन के पास प्रोटोटाइप में कैलकुलेट टैक्स नाम का फंक्शन तो था ही अब खुद का भी कैलकुलेट टैक्स नाम का फंक्शन है तो ऐसे केस में क्या होता है जब किसी ऑब्जेक्ट के अंदर एंड उसके प्रोटोटाइप के अंदर दोनों के अंदर सेम नाम होता है किसी भी मेथड का तो इफ आई प्रिंट करण अर्जुन करण अर्जुन के अंदर कैलकुलेट टैक्स नाम का ये फंक्शन है और साथ के साथ इनके प्रोटोटाइप के अंदर भी कैलकुलेट टैक्स नाम का एक फंक्शन है तो जब हम करण अर्जुन डॉट कैलकुलेट टैक्स को कॉल करेंगे तो इस बार टैक्स रेट यूज होगा जो उनके खुद के ऑब्जेक्ट के अंदर डिफाइन किया हुआ है यानी जब किसी भी ऑब्जेक्ट एंड प्रोटोटाइप के अंदर सेम मेथड होता है तो उस केस में ऑब्जेक्ट का मेथड यूज़ होता है तो ये चीज हमेशा याद रखनी है कि प्रोटोटाइप से हम प्रॉपर्टीज एंड मेथड्स तो ले सकते हैं पर कभी भी अगर क्लैश आएगा तो उसमें कौन जीतेगा उसमें ऑब्जेक्ट जीतेगी ऑब्जेक्ट क्यों जीतेगी क्योंकि ऑब्जेक्ट ज्यादा स्पेसिफिक है हमें पता है हम करण अर्जुन की बात कर रहे हैं तो उसमें ऑब् वियस जो चीज सबसे नजदीक है प्रोटोटाइप क्या है नजदीक है पर उतना नजदीक नहीं है जो अपनी प्रॉपर्टीज अपने मेथड्स होते हैं वो सबसे ज्यादा नजदीक होते हैं तो हमेशा वही विन कर रहे होते हैं जनरल सिनेरियो में प्रोग्रामिंग के अंदर तो दिस वाज ऑल अबाउट प्रोटोटाइप्स इन जावास्क्रिप्ट नेक्स्ट हम बात करने वाले हैं अपनी क्लासेस के बारे में अब एक तरीका हमने ऑलरेडी देख लिया अपनी ऑब्जेक्ट्स को क्रिएट करने का एक और तरीका हमारे पास होता है व्हिच इज थ्रू क्लासेस अब क्लासेस क्या होती है जावास्क्रिप्ट के अंदर क्लास इज अ प्रोग्राम कोड टेंप्लेट फॉर क्रिएटिंग ऑब्जेक्ट्स इसके लिए हम एक यूज केस यानी सिनेरियो को इमेजिन करते हैं फॉर एग्जांपल फर्चर मैन्युफैक्चर होगी तो उसके अंदर किस-किस तरीके से इंजन यूज होगा किस-किस तरीके से उसको बिल्ड करना है यानी सारी की सारी जो कार्स है वो क्या है एक सिंगल टेंप्लेट के ऊपर बनी हुई है या फिर अगर कंपनी के सॉफ्टवेयर के अंदर हमें हर एक नए एंप्लॉई को रजिस्टर करना है फॉर एग्जांपल कंपनी के अंदर 50 एंप्लॉयज है तो हर एक एंप्लॉई के लिए उसकी सैलरी सेव होने वाली है उसका एड्रेस सेव होने वाला है उनका पैन नंबर सेव होने वाला है नाम ईमेल इस तरीके की सारी की सारी इंफॉर्मेशन स्टोर होने वाली है अब अगर हम 50 डिफरेंट ऑब्जेक्ट्स को यानी 50 डिफरेंट एंप्लॉई ऑब्जेक्ट्स को क्रिएट करना चाहते हैं तो उसके लिए बार-बार सारी की सारी वो इंफॉर्मेशन बताना कि इस ऑब्जेक्ट के लिए ये सेव करना है इस ऑब्जेक्ट के लिए ये सेव करना है वो क्या होगा वो रिपीटेशन हो जाएगी तो जब भी हमें बल्क में सिमिलर सी ऑब्जेक्ट्स को क्रिएट करना होता है तो उन्हें हम क्रिएट करते हैं यूजिंग क्लासेस और क्लासेस हमें क्या देती हैं क्लासेस बेसिकली एक ऑब्जेक्ट को बनाने का एक टेंप्लेट देती हैं या इसे कह सकते हैं एक ब्लूप्रिंट होता है जैसे फैक्ट्री के अंदर पता होता है कि कोई भी कार मैन्युफैक्चर होगी तो उसका ये ब्लूप्रिंट है तो सारी की सारी कार्स उसी ब्लूप्रिंट की तरह बनी होंगी अगर ब्लूप्रिंट के अंदर लिखा है कि कार्स सारी की सारी कार्स का कलर जो है वो ब्लू कलर का होगा तो जितनी भी कार्स मैन्युफैक्चर होंगी सबका कलर ब्लू कलर का होने वाला है तो हमने क्या किया एक सिंगल टेंप्लेट बना दिया और अब जितनी भी ऑब्जेक्ट्स बनेंगी उस टेंप्लेट के थ्रू वो सारी की सारी ऑब्जेक्ट्स सिमिलर दिखेंगी तो वही टेंप्लेट या वही ब्लूप्रिंट हमारी प्रोग्रामिंग के अंदर जावास्क्रिप्ट के अंदर ऑब्जेक्ट्स को बनाने का हमारे पास होता है क्लासेस अब क्लासेस के थ्रू जो भी ऑब्जेक्ट्स बनती हैं दे विल हैव सम वेरिएबल यानी हमारी जो स्टेट होती है हमारी जो प्रॉपर्टीज होती है एंड दे विल आल्सो हैव सम बिहेवियर यानी हमारी जो फंक्शंस होते हैं ऑब्जेक्ट्स के अंदर तो हमारे पास हमारी जो क्लास होती है वो एक्चुअली ऑब्जेक्ट के लिए उसका ब्लूप्रिंट होती है तो क्लास को क्रिएट करने के लिए हम लिखते हैं अपना क्लास कीवर्ड और फिर अपनी क्लास का नाम एंड क्लास के अंदर कर्ली ब्रेसेज के बाद हम कुछ-कुछ मेथड्स को कुछ-कुछ प्रॉपर्टीज को डिफाइन कर सकते हैं अभी के लिए कंस्ट्रक्टर क्या है इसको हमें इग्नोर करना है इसको हम डिटेल में पढ़ेंगे पर अभी के लिए सिर्फ इतना समझना क्लास कीवर्ड उसका नाम एंड फिर अपने मेथड्स एंड प्रॉपर्टीज अब फॉर एग्जांपल मुझे बनानी है एक जिसका नाम होगा कार और इस क्लास के अंदर सारी की सारी कार वाले मेथड्स एंड प्रॉपर्टीज होंगे जो हर एक सिंगल कार के अंदर होनी चाहिए जो भी हमारी फैक्ट्री के अंदर मैन्युफैक्चर हो रही है अब जो भी कार होती है या जो भी आएंगे तो उसमें एक सिंगल फंक्शन के अंदर एक सिंगल मेथड के अंदर हो सकता है बहुत सारी डिफरेंट डिफरेंट लाइंस ऑफ़ कोड हो एक हमारा स्टार्ट फंक्शन हो सकता है एक हमारा स्टॉप हमारे पास हो सकता है स्टॉप में हम प्रिंट करवा देंगे स्टॉप को तो इस तरीके से क्या किया हमने अपनी क्लास बना दी अब क्लास के अंदर जब हम दो डिफरेंट फंक्शंस को लिखते हैं तो हमें कॉमा से उन्हें सेपरेट करने की जरूरत नहीं है वो ऑलरेडी पता है कि दिस इज वन फंक्शन दिस इज वन फंक्शन तो ऑब्जेक्ट और क्लास में डिफरेंस होता है क्लास एक सिंगल टेंप्लेट होती है जिसके बेसिस पे हम बहुत सारे डिफरेंट डिफरेंट ऑब्जेक्ट्स को क्रिएट कर सकते हैं तो ये तो हो गई हमारी टा कार अब इस टेंप्लेट के थ्रू यानी अगर हम अपने कोड के अंदर प्रिंट करें इफ आई ट्राई टू प्रिंट क्रिएट करनी है एक कार क्रिएट करनी है तो इसके लिए हम लिख सकते हैं न्यू न्यू हमारा कीवर्ड होता है जो हमारे लिए एक नई ऑब्जेक्ट को क्रिएट करता है थ्रू क्लासेस और यहां हम लिख सकते हैं आ गया अब कंस्ट्रक्टर क्या है उसको अभी के लिए इग्नोर करना है स्टार्ट एंड स्टॉप के दोनों फंक्शंस हमारे पास आ गए तो बेसिकली देते हैं एंड नाउ इफ आई गो एंड सी इफ आई ट्राई टू प्रिंट आकर स्टोर हो जाए और उन्हें हम यूज कर पाए तो इस तरीके से हमारी चीजें काम करती हैं साथ के साथ हम चाहे तो कोई वेरिएबल भी डिफाइन कर सकते हैं फॉर एग्जांपल हम लिख सकते हैं सेट ब्रांड हम एक नई प्रॉपर्टी बना सकते हैं क्लास के अंदर जो बोलेगी कि इस क्लास को यूज करके जितनी भी ऑब्जेक्ट्स बनती है उनके अंदर ये एक फंक्शन होगा जिसके पास एक आर्गुमेंट आएगा ब्रांड नाम से एंड ब्रांड के अंदर दिस डॉट ब्रांड इ इक्वल टू ब्रांड यानी हमारी यह जो वैल्यू है ये जो पैरामीटर आएगा इस फंक्शन के पास ये हमारे एक और नए पैरामीटर विद द सेम नेम यानी ब्रांड इसको हम ब्रांड नेम भी बोल सकते हैं ब्रांड नेम के अंदर यह वाली वैल्यू जाकर सेव हो जाएगी और वो दिस डॉट समथिंग बन जाएगा दिस कहने का मतलब है यहां पर ईच इंडिविजुअल ऑब्जेक्ट मतलब जिस भी क्लास के लिए ये सेट ब्रांड कॉल होगा यहां पर दिस का मतलब है वही ऑब्जेक्ट फॉर एग्जांपल इफ आई डू फरड सेट ब्रांड एंड ब्रांड के अंदर हम सेट कर रहे हैं फर कोई एस अ ब्रांड इसको सेव कर लेते हैं रिफ्रेश करते हैं तो इस बार अगर हम भी हमारी प्रॉपर्टी होती है उसको सेम नाम दे देते हैं इसमें कोई प्रॉब्लम नहीं है यहां पर ये वाला जो ब्रांड है और ये वाला जो ब्रांड है दोनों अलग-अलग वेरिएबल हैं ये वाला ब्रांड क्या है ये वाला ब्रांड तो हमारे इस फंक्शन का आर्गुमेंट है पैरामीटर है जो वैल्यू यहां पर आ रही है और ये वाला ब्रांड क्या है ये वाला ब्रांड इस क्लास से बनने वाली सारी की सारी ऑब्जेक्ट्स के लिए उनकी प्रॉपर्टी है बट हम इनको सेम नाम बिल्कुल दे सकते हैं अब दोनों में डिफरेंस कैसे पता चलेगा डिफरेंस ऐसे पता चलेगा जो दिस के साथ लिखा हुआ है वो क्या है वो ऑब्जेक्ट की प्रॉपर्टी है और जो दूसरा है वो वही है जो वेरिएबल एज अ आर्गुमेंट हमारा हमारे पास इस फंक्शन के अंदर आया तो इस तरीके से हम क्लासेस का ब्लूप्रिंट क्लासेस का टेंप्लेट यूज़ करके अपने लिए डिफरेंट डिफरेंट ऑब्जेक्ट्स को क्रिएट कर सकते हैं और बार-बार हर ऑब्जेक्ट के लिए मुझे सेम फंक्शन सेम प्रॉपर्टी डिफाइन करने की जरूरत नहीं पड़ी तो ये फायदा होता है क्लासेस को क्रिएट करने का क्लासेस जनरली हम उन केसेस के अंदर प्रेफर करेंगे जब हमें सेम टेंप्लेट के ऊपर मल्टीपल ऑब्जेक्ट्स बनानी हो फॉर एग्जांपल हम एक बैंक के लिए उनका सॉफ्टवेयर बना रहे हैं तो बैंक को अपने एंप्लॉयज की इंफॉर्मेशन स्टोर करने की जरूरत है तो वहां पर जब हम उनका सॉफ्टवेयर बिल्ड कर रहे हैं उनकी वेबसाइट बिल्ड कर रहे हैं तो इंटरनली हर एक एंप्लॉई का डाटा स्टोर करने के लिए हम अपनी एक क्लास बना सकते हैं एंप्लॉई जिसके अंदर ब्लूप्रिंट होगा कि एंप्लॉई के पास क्या-क्या इंफॉर्मेशन होनी चाहिए और फिर उस टेंप्लेट को यूज़ करके हर जो भी बैंक के सारे सारे एंप्लॉयज होंगे उन सबके लिए इंडिविजुअल ऑब्जेक्ट्स को हम क्रिएट कर रहे होंगे तो ये हो गया द बेसिक्स अबाउट क्लास अब हम फोकस करने वाले हैं अपॉन दिस इंपॉर्टेंट थिंग कॉल्ड कंस्ट्रक्टर अब कंस्ट्रक्टर क्या होता है कंस्ट्रक्टर हमारी क्लास के अंदर एक मेथड ही होता है बट ये हमारा एक स्पेशल मेथड होता है स्पेशल मेथड क्यों होता है क्योंकि इसका नाम तो कंस्ट्रक्टर ही है कंस्ट्रक्टर इज अ रिजर्व्ड कीवर्ड यानी सिर्फ कंस्ट्रक्टर का नाम ही कंस्ट्रक्टर होता है जावास्क्रिप्ट के अंदर तो यहां पर हम एक स्पेशल मेथड लिख सकते हैं कॉल्ड कंस्ट्रक्टर एंड इन फैक्ट अगर हम कंस्ट्रक्टर खुद से क्रिएट भी नहीं करते फॉर एग्जांपल यहां इस क्लास के अंदर मैंने कोई कंस्ट्रक्टर क्रिएट नहीं किया तो जावास्क्रिप्ट क्या करेगा ऑटोमेटिक हमारे लिए नया कंस्ट्रक्टर क्रिएट कर देगा तो कंस्ट्रक्टर मेथड ऐसा मेथड होता है क्लास के अंदर व्हिच इज ऑटोमेटिक इन्वोक्ड बाय न्यू जब भी हम एक नई ऑब्जेक्ट क्रिएट करते हैं फॉर एग्जांपल मैंने लिखा लेट ऑब्जेक्ट इज इक्वल टू न्यू और फिर अपनी क्लास का नाम हम लिख सकते हैं ये जब हम फॉर्मेट इस तरीके से लिख रहे हैं अपनी ऑब्जेक्ट को क्रिएट करने के लिए तो यहां पर जैसे ही हमने इस न्यू कीवर्ड को यूज़ किया न्यू कीवर्ड क्या करता है न्यू कीवर्ड कंस्ट्रक्टर को ढूंढता है और अगर किसी क्लास के अंदर उसे कंस्ट्रक्टर नहीं मिला तो जावास्क्रिप्ट क्या करेगा ऑटोमेटिक इस मेथड को इस कंस्ट्रक्टर मेथड को क्रिएट कर देगा और कंस्ट्रक्टर मेथड का जनरल काम होता है टू इनिश इइ द ऑब्जेक्ट यानी जब भी कोई नई ऑब्जेक्ट क्रिएट हो रही हो उस टाइम पे क्रिएशन के टाइम पे अगर आप कोई काम करवाना चाहते हैं कुछ प्रॉपर्टीज को सेट करना चाहते हैं इनिशियलिज्म हैं जैसे अभी इस ब्रांड तीन फंक्शन बनाए थे चौथा कहां से आया चौथा ऑटोमेटिक जावास्क्रिप्ट से आया बट वी कैन आल्सो क्रिएट आवर ओन कस्टम कंस्ट्रक्टर्स जैसे अगर हम चाहे तो यहां पर ये अपना कंस्ट्रक्टर बना सकते हैं और कंस्ट्रक्टर का सिंपली कुछ भी काम हो सकता है लेट्स सपोज कंस्ट्रक्टर को इस तरीके से क्रिएट करते हैं तो फंक्शन का नाम ही कंस्ट्रक्टर होता है कंस्ट्रक्टर होता मेथड है बट उसका नाम ही कंस्ट्रक्टर है और यहां पर हम प्रिंट करवा सकते हैं क्रिएटिंग न्यू ऑब्जेक्ट तो जब भी किसी भी ऑब्जेक्ट को इस तो सबसे पहले कंस्ट्रक्टर इवोक होता है यानी जब भी कोई भी ऑब्जेक्ट क्रिएट होती है तो ऑटोमेटिक बिना कंस्ट्रक्टर को कॉल किए हुए ऑटोमेटिक वह इवोक हो जाता है ऑटोमेटिक एग्जीक्यूट हो जाता है सो नाउ व्हेन एवर आई विल क्रिएट अ क्लास मेरे पास प्रिंट होकर आएगा क्रिएटिंग न्यू ऑब्जेक्ट जैसे यहां पर इसे हटा देते हैं अभी के लिए इसे हटा देते हैं जैसे ही हम फर्स्ट टाइम कंस्ट्रक्टर इवोक होगा जैसे इसे सेव कर लेते हैं रिफ्रेश करते हैं तो दो बार कंस्ट्रक्टर इवोक हुआ तो दो बार हमारे पास क्रिएटिंग न्यू ऑब्जेक्ट क्रिएटिंग न्यू ऑब्जेक्ट प्रिंट हो कर आया हम चाहे तो अपने कंस्ट्रक्टर को नॉर्मल फंक्शन की तरह आर्गुमेंट भी पास कर सकते हैं जैसे यहां पर अगर मैंने अपनी कार का जो ब्रांड नेम है वो यहां पे पास कर दिया तो यहां उसे ब्रांड नाम के एक वेरिएबल के अंदर सेव कर सकते हैं एंड वी कैन सिंपली राइट दिस ड ब्रंड इ ब्रांड ये वाली लाइन जो हम यहां लिख रहे थे सेट ब्रांड वो हमें यहां लिखने की जरूरत नहीं है वो हम इनिश इजेशन के टाइम पर लिख सकते हैं इनिश इइ जेशन यानी जब हम किसी भी ऑब्जेक्ट को क्रिएट कर रहे हैं तो इस तरीके से इस बार रिफ्रेश करेंगे एंड इफ आई ट्राई टू प्रिंट यहां पे नहीं आई है तो इस वेरिएबल के अंदर अनडिफाइंड आ जाएगा और वही अनडिफाइंड यहां पे आके सेट हो जाएगा पर उसमें कोई परेशानी की बात नहीं है क्योंकि हम इसे चेंज कर सकते हैं हमलेस ब्रांड को एक्सेस कर सकते हैं और इसे बाद में जाके चेंज कर सकते हैं आई कैन मेक इट लेक्सस अगेन और इस बार लेक्सस को प्रिंट करवाया तो इस बार ब्रांड की वैल्यू क्या हो गई अपडेट हो गई तो ऑब्जेक्ट्स के अंदर चेंजेज तो किए ही जा सकते हैं बट पॉइंट इज अगर हमें इनिशियल इजेशन के टाइम पे कुछ काम करवाना है यानी फर्स्ट टाइम जब ऑब्जेक्ट क्रिएट हो रही है उस टाइम पे कुछ काम करवाना है तो वो काम हमारे लिए हमारा कंस्ट्रक्टर करता है हम चाहे तो इसे मल्टीपल आर्ग टस भी भेज सकते हैं जैसे फॉर एग्जांपल हम अपनी माइलेज भी सेंड कर रहे हैं इसकी माइलेज 10 ले लेते हैं ये लेक्सस हो गया इसकी माइलेज 12 ले लेते हैं एंड यहां एक वेरिएबल बना लेते हैं नया माइलेज के नाम से तो यहां पे हम सेट कर सकते हैं दिस डॉट माइलेज इज इक्वल टू माय माइलेज सेव एंड रिफ्रेश तो इस बार जब हम या इनफैक्ट मैं आपको दिखाती हूं कि यहां पर जैसे ही माय हमारे पास ब्रांड है हमारे पास माइलेज है और हमारे पास डिफरेंट डिफरेंट फंक्शंस हैं सेम चीज हमारी लेक्स के लिए पहले कंस्ट्रक्टर कॉल हुआ उसके बाद इसे हटा देते हैं कंस्ट्रक्टर कॉल हुआ एंड उसके बाद हमारे लिए हमारी लेक्स प्रिंट होके आ गई हमें पहले ही पता चल रहा है लेक्स कहां से बनी हैले वैल्यूज होती हैं जिनको इनिशियलिज्म एंड इस तरीके से हम अपने प्रॉपर्टीज एंड बिहेवियर्स को सेट करते हैं क्लास के अंदर नेक्स्ट हम एक और इंपॉर्टेंट टॉपिक को कवर करेंगे रिलेटेड टू क्लासेस एंड ऑब्जेक्ट्स व्हिच इज़ कॉल्ड इन्हेरिटेंस अब इन्हेरिटेंस ऐसा कांसेप्ट है जो सिर्फ जावास्क्रिप्ट के अंदर नहीं है अगर आप दूसरी प्रोग्रामिंग लैंग्वेजेस देखते हो जैसे c+ प देखते हैं हम जैसे हम जावा देखते हैं तो उनके अंदर भी अगर आप ऑब्जेक्ट्स एंड क्लासेस को देखोगे इन लैंग्वेजेस के अंदर भी ऑब्जेक्ट्स एंड क्लासेस होती हैं तो वहां पर भी इन्हेरिटेंस का कांसेप्ट काम करता है यहां पर भी इन्हेरिटेंस का कांसेप्ट काम करता है तो इन्हेरिटेंस इज अ प्रोग्रामिंग कांसेप्ट इन जनरल कोई भी अच्छी प्रोग्रामिंग लैंग्वेज होती है उसके अंदर आपको ऑब्जेक्ट्स क्लासेस देखने को मिलती है तो इन्हेरिटेंस का मतलब बेसिकली होता है पासिंग डाउन ऑफ प्रॉपर्टीज एंड मेथड्स फ्रॉम पेरेंट क्लास टू चाइल्ड क्लास यानी हमारे पास अगर कोई क्लास है लेट्स सपोज वी हैव क्लास वन एंड वी हैव क्लास टू अगर क्लास वन के अंदर हमने कुछ प्रॉपर्टी वन डिफाइन कर दी प्रॉपर्टी टू डिफाइन कर दी मेथड वन डिफाइन कर दिया मेथड टू डिफाइन कर दिया अगर हम चाहते हैं इन सारी चीजों को हम रीयूज कर पाए अपनी क्लास टू के अंदर तो हम क्या करते हैं इन सारी प्रॉपर्टीज को इन्हेरिटेंस अपने पेरेंट हमारे पेरेंट्स के पास जो भी होता है उसको हम एज चिल्ड्रन इन्हेरिटेंस दादा दादी नाना नानी के पास जो होता है उसको हमारे पेरेंट्स इन्हेरिटेंस का मतलब होता है जब एक क्लास से प्रॉपर्टीज एंड मेथड्स दूसरी क्लास की तरफ पास डाउन हो जाते हैं इन्हेरिटेंस सेंड्स तो हम जनरली कहते हैं हमारी क्लास टू क्लास वन को एक्सटेंड कर रही है या हमारी जो चाइल्ड क्लास है जो एक्सटेंड करती है उसे चाइल्ड क्लास कह लेते हैं वो अपने पेरेंट क्लास की प्रॉपर्टीज को एक्सटेंड कर रही है तो हम कोई भी नॉर्मल क्लास बना सकते हैं फॉर एग्जांपल हमने पेरेंट क्लास बना ली और जब भी हम अपनी चाइल्ड क्लास में पेरेंट को एक्सटेंड करना चाहते हैं तो उसके लिए हम एक्सटेंड्स कीवर्ड को यूज करते हैं और फिर लिखते हैं पेरेंट इसका एक एग्जांपल देखते हैं फॉर एग्जांपल आई क्रिएट अ क्लास कॉल्ड पेरेंट पेरेंट क्लास को हमने यहां क्रिएट कर लिया एंड पेरेंट क्लास के अंदर हमारे पास एक फंक्शन है इसको कह देते हैं हेलो फंक्शन है हमारे पास जिसका काम है कसोल डलॉग करवाना हमारे लिए हेलो अब अगर हम कोई क्लास बना रहे हैं चाइल्ड नाम से और उसके अंदर हम अपने हेलो फंक्शन को यूज करना चाहते हैं तो एक तरीका तो है कि इस फंक्शन को पूरा कॉपी करके हम यहां पे पेस्ट करें पर दूसरा तरीका है कि हम इन्हेरिटेंस को अच्छा एक और इंटरेस्टिंग चीज मैं आपको बताती हूं कोई भी काम जो हम क्लासेस से कर रहे हैं जो हम क्लासेस से कर रहे हैं कंस्ट्रक्टर से कर रहे हैं इन्हेरिटेंस से कर रहे हैं ये सारे के सारे काम सिर्फ फंक्शन से कर पाना पॉसिबल है मतलब एज सच हमें क्लासेस इन्हेरिटेंस इन कांसेप्ट की कोर नीड नहीं होती है बट ये सारे के सारे जो कांसेप्ट हैं ये प्रोग्रामिंग को करने का एक बेटर तरीका है फॉर एग्जांपल अगर हमें फंक्शंस की हेल्प से सारी चीजें करनी होती तो इसी फंक्शन को हर एक ऑब्जेक्ट के अंदर हम बार-बार बार-बार लिख रहे होते हैं पर क्लास ने क्या किया क्लास ने मल्टीपल ऑब्जेक्ट्स को एक साथ क्रिएट करने का एक सिंपल ब्लूप्रिंट बनाने का हमें तरीका दे दिया कहने को तो हम बार-बार ऑब्जेक्ट्स को डिफाइन कर सकते थे बार-बार अपने फंक्शन मेथड्स को लिख सकते थे पर क्लास ने उस चीज को सिंपलीफाई कर दिया बेटर तरीका दे दिया हमें कोड को लिखने का वही सेम काम हमारे लिए इन्हेरिटेंस कर र है मतलब अगर मुझे चाइल्ड क्लास के अंदर अपना हेलो फंक्शन यूज करना होता तो कुछ नहीं करना था कॉपी करके पेस्ट करना होता हम यू कर पाते बट क्योंकि प्रोग्रामिंग के अंदर रिपीटेशन बहुत खराब चीज है हम बार-बार उसी सेम कोड को कॉपी पेस्ट कर रहे हैं कॉपी पेस्ट कर रहे हैं दैट इज नॉट अ गुड वे ऑफ राइटिंग कोड सो वी ट्राई टू रिड्यूस आवर रिपीटेशंस जिसके लिए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में यानी जहां पर ऑब्जेक्ट एंड क्लासेस को हम यूज़ करते हैं कोड के अंदर वहां पे इन्हेरिटेंस बहुत हमारे काम आता है सो दैट इज व्हाई वी आर यूजिंग इन्हेरिटेंस अब हमने इन्हेरिटेंस के अंदर हमने एज सच कुछ नहीं लिखा पर अगर मैं एक ऑब्जेक्ट बनाऊ लेट ऑब्जेक्ट इज इक्वल टू चाइल्ड क्लास की एक ऑब्जेक्ट आई तो यहां चाइल्ड कंस्ट्रक्टर कैन नॉट बी इन्वोक्ड विदाउट न्यू ओके सेव रिफ्रेश तो यहां पर जब हम अपनी ऑब्जेक्ट को प्रिंट करवाएंगे तो यह है तो चाइल्ड क्लास की ऑब्जेक्ट बट अगर हम लिखें ऑब्जेक्ट डॉट हेलो तो वो चीज हमारे लिए वर्क कर जाएगी उसने हमारे लिए एरर नहीं दिया पर अगर मैंने ऑब्जेक्ट ड एसी किया होता कुछ भी रैंडम चीज हमने लिखी होती ऑब्जेक्ट ड एसी तो वो वर्क नहीं करती वो हमारे लिए एरर दे देती बट क्योंकि ये चीज एजिस्ट करती है थ्रू इन्हेरिटेंस इसलिए यहां पर हमारे लिए एरर नहीं आया तो ये क्या हो रहा है ये यहां पर हमारे लिए इन्हेरिटेंस वर्क कर रही है इसका एक और थोड़ा सा बेटर एग्जांपल देखते हैं फॉर एग्जांपल हमने क्लास बनाई कॉल्ड पर्सन हर जो इंसान होता है उसको रिप्रेजेंट करने के लिए हमने क्लास बनाई है कोड के अंदर हर जो पर्सन होता है दे कैन ऑल ईट दे कैन ऑल स्लीप तो हमने एक फंक्शन बना दिया ईट नाम से तो हम लिख सकते हैं console.log ट ऐसे ही हमने एक फंक्शन बना दिया स्लीप नाम से तो हम लिख सकते हैं कसोल डलॉग अब हम एक और नई क्लास बना रहे हैं कॉल्ड इंजीनियर अब हमें पता है हर जो इंजीनियर है वो ईट एंड स्लीप तो कर ही सकता है उसके अलावा इंजीनियर के पास अलग प्रॉपर्टीज होंगी जैसे फॉर एग्जांपल इंजीनियर के पास एक वर्क नाम का फंक्शन होगा जिसमें हम प्रिंट कर सकते हैं कसोल डलॉग सॉल्व प्रॉब्लम्स प्रॉब्लम्स बिल्ड समथिंग इस तरीके का कुछ वर्क होता है किसी भी इंजीनियर का तो इंजीनियर के पास वर्क नाम का फंक्शन है तो कोई भी अगर हम एक इंजीनियर बनाते हैं सो आई एम एन इंजीनियर तो आई विल मेक वन श्रद्धा ऑब्जेक्ट जो क्या है जो एक इंजीनियर है तो इज इक्वल टू न्यू इंजीनियर नई इंजीनियर ऑब्जेक्ट बना ली हमने तो श्रद्धा ऑब्जेक्ट को जब हम प्रिंट करेंगे ये एक इंजीनियर क्लास की ऑब्जेक्ट है ठीक है ऑलराइट और अपनी श्रद्धा ऑब्जेक्ट के लिए व्हाट आई कैन डू इज हम वर्क फंक्शन को कॉल कर सकते हैं तो यह चीज हमारे लिए प्रिंट होक आ गई पर क्योंकि हर एक इंजीनियर एक पर्सन भी होता है एक इंसान भी होता है हर एक डॉक्टर भी एक इंसान होता है तो एक पर्सन की जो सारी की सारी प्रॉपर्टीज है वो इंजीनियर को इन्हेरिटेंस हैं इन प्रॉपर्टीज को तो उससे क्या होगा अगर हम श्रद्धा के लिए श्रद्धा ऑब्जेक्ट के लिए इफ वी कॉल ईट नाउ दिस फंक्शन विल वर्क तो सारे के सारे ये जो चीजें हैं ये इन्हेरिटेंस के अंदर वैसे ही कल को अगर हमें इंजीनियर नहीं कल को हमें डॉक्टर नाम की क्लास भी बनानी होती तो इसको कर सकते हैं डॉक्टर एंड यहां लिख सकते हैं ट्रीट पेशेंट्स नाम का कुछ वर्क फंक्शन बना लिया तो उस केस में क्या होगा उस केस में अगर हम कोई डॉक्टर भी क्रिएट करते हैं तो उसके पास भी पर्सन की सारी की सारी प्रॉपर्टीज इन्हेरिटेंस सेम क्लास से प्रॉपर्टीज को इन्हेरिटेंस है फॉर एग्जांपल हर पर्सन के लिए अगर जनरली हमारा जो वर्क है एक वर्क नाम का फंक्शन अगर हम पर्सन में भी डिफाइन कर दें और फिर वहां हम लिखें कसोल डलॉग डू नथिंग तो पर्सन के लिए अभी क्या है अभी बेसिक वर्क है डू नथिंग और इंजीनियर क्लास के अंदर भी अपना वर्क है तो जब भी हमारी पेरेंट क्लास एंड चाइल्ड क्लास के अंदर सेम फंक्शन होता है तो उस केस में चाइल्ड क्लास वाला फंक्शन इवोक होता है जैसे फॉर एग्जांपल इफ आई हैव माय इंजीनियर ऑब्जेक्ट जिसके अंदर हम हम वर्क को कॉल करेंगे तो हमेशा हमारी चाइल्ड क्लास वाला फंक्शन इवोक होगा यहां पर क्या हुआ जो चाइल्ड क्लास का फंक्शन है वो हमारे लिए इवोक हुआ पेरेंट क्लास का फंक्शन इवोक नहीं होता सो दिस वी कैन आल्सो रिमेंबर कि अगर चाइल्ड एंड पेरेंट क्लास दोनों के पास सेम मेथड होता है तो चाइल्ड का मेथड यूज़ होता है और इस कंसेप्ट को हम कहते हैं मेथड ओवरराइडिंग ओवरराइड का मतलब होता है किसी दूसरी चीज को कवर कर लेना तो बेसिकली चाइल्ड का जो मेथड है वो स्ट्रांग हो जाता है वो पेरेंट वाले मेथड को कवर कर लेता है तो इट बेसिकली ओवरराइट्स इट हम चाहे तो अपनी इस पर्सन क्लास के अंदर एक कंस्ट्रक्टर भी क्रिएट कर सकते कंस्ट्रक्टर तो कंस्ट्रक्टर के अंदर हम बेसिकली एक नया वेरिएबल सेट कर देंगे दिस डॉट स्पीशी स्पीशीज क्या होती है हर पर्सन की स्पीशीज हमारे पास होती है होमो सेपियंस तो वही वैल्यू हम स्टोर करने वाले हैं तो जो भी पर्सन क्लास बनेगी पर्सन क्लास की अगर कोई भी ऑब्जेक्ट बनती है फॉर एग्जांपल इफ आई राइट लेट पव इ इक्वल टू न्यू पर्सन तो जो हमारे पास पव आएगा p1 के अंदर एक स्पीशीज आ जाएगी और सारे के सारे फंक्शंस आ जाएंगे किसी भी पर्सन के बट अगर हम लिखते हैं ईवन यानी इंजीनियर की बनाते हैं न्यू इंजीनियर तो इंजीनियर के अंदर भी हमारे पास स्पीशीज वाला जो प्रॉपर्टी है वो आएगी अब इंजीनियर के अंदर तो एज सच हमने स्पीशीज डिफाइन नहीं की पर क्योंकि हम पेरेंट की सारी की सारी प्रॉपर्टीज एंड मेथड्स इन्हेरिटेंस पर्सन के पास होंगी वो सारी की सारी प्रॉपर्टीज हमारी इंजीनियर के पास भी होंगी तो इस इवन ऑब्जेक्ट के अंदर भी हमें सेम प्रॉप देखने को मिलती है नेक्स्ट हम बात करने वाले हैं एक और इंटरेस्टिंग एंड इंपॉर्टेंट कीवर्ड के बारे में व्हिच इज कॉल्ड द सुपर कीवर्ड अब सुपर कीवर्ड इज यूज टू कॉल द कंस्ट्रक्टर ऑफ इट्स पेरेंट क्लास टू एक्सेस द पेरेंट्स प्रॉपर्टीज एंड मेथड्स कभी-कभार हमारे पास ऐसी कंडीशन आ जाती है जिसमें हमें चाइल्ड क्लास से क्या करना पड़ता है पेरेंट क्लास की प्रॉपर्टीज को डायरेक्टली एक्सेस करना पड़ता है या फिर पेरेंट के कंस्ट्रक्टर को कॉल करना पड़ता है तो उस केस में पेरेंट के कंस्ट्रक्टर को कॉल करने के लिए हम सुपर कीवर्ड को यूज़ करते हैं सुपर मतलब हमसे जो एक लेवल ऊपर है तो पेरेंट्स एक लेवल ऊपर होते हैं तो सुपर कीवर्ड को वी आर गोइंग टू यूज़ अब उसके लिए जावास्क्रिप्ट के अंदर क्या होता है वो मैं एक बार आपको दिखाती हूं फॉर एग्जांपल ये स्लीप यहां से हटा देते हैं एंड वी कैन आल्सो रिमूव दिस वर्क फंक्शन इफ वी वांट ये सिंपल सी हमने पर्सन नाम की क्लास बनाई हुई है इस क्लास के अंदर हमारे पास एक कंस्ट्रक्टर है जो एक स्पीशीज नाम की वैल्यू को इनिश इज कर रहा है और एक हमारे पास एक फंक्शन है अब अगर हमने इंजीनियर क्लास बनाई तो उस इंजीनियर क्लास में पर्सन की भी सारी की सारी प्रॉपर्टीज आ जाएंगी प्लस इंजीनियर के पास अपनी कुछ एडिशनल प्रॉपर्टीज हो सकती हैं फॉर एग्जांपल यहां से अभी के लिए यह डॉक्टर हटा देते हैं एंड यह हमारी एक इंजीनियर ऑब्जेक्ट हो गई अब अगर हम या इसे इंजीनियर ऑब्जेक्ट कह देते हैं अब जैसे पर्सन क्लास के पास अपना कंस्ट्रक्टर है वैसे ही इंजीनियर क्लास के पास भी अपना कंस्ट्रक्टर हो सकता है तो कंस्ट्रक्टर में कोई भी काम हो सकता है जैसे यहां पर फॉर एग्जांपल इफ आई मेक अ न्यू वेरिएबल ब्रांच तो हम कह सकते हैं कि हर इंजीनियर ने अपनी जो बीटेक की होगी वो किसी ब्रांच में की होगी कोई केमिकल इंजीनियर होगा कोई मैकेनिकल इंजीनियर हो होगा कोई कंप्यूटर इंजीनियर होगा तो हर किसी की अपनी ब्रांच होती है तो यहां पर कंस्ट्रक्टर क्या करेगा अपना एक वेरिएबल ले लेगा जिसको हम कहेंगे दिस डॉट ब्रांच दिस डॉट ब्रंच इ इक्वल ट ब्रंच यानी हर एक इंजीनियर के पास अपनी एक स्पेशल प्रॉपर्टी होगी ब्रांच नाम से जिसको हम सेव करवा सकते हैं अब हम एक नया इंजीनियर क्रिएट कर रहे हैं फॉर एग्जांपल दिस इज़ अ केमिकल इंजीनियर केमिकल इंजीनियर हम क्रिएट करने की कोशिश कर रहे हैं तो ये उनकी ब्रांच आ गई अब इस कोड में एज सच देख के हमें कोई प्रॉब्लम दिखाई नहीं दे रही दिस इज़ अ वेरी नॉर्मल कोड जिसको हमने लिखा है पर जैसे ही इस को सेव करके हम रन करेंगे हमारे पास एक एरर आएगा एरर क्या कह रहा है मस्ट कॉल सुपर कंस्ट्रक्टर इन डिराइवर फ्रॉम डिराइवर अब यहां पर ये डिराइवर क्लास होती है और उससे हमारी चाइल्ड क्लास कुछ प्रॉपर्टीज इन्हेरिटेंस है इसे हम प्रोग्रामिंग के अंदर डिराइवर आई है किसी से कुछ लेकर आई है तो बेसिकली यहां यहां पर कहा जा रहा है कि हमें सुपर कंस्ट्रक्टर को कॉल करना पड़ता है डिराइवर करने से पहले या डिराइवर अगर हम कोई कंस्ट्रक्टर बनाते हैं तो कंस्ट्रक्टर क्या करेगा उस कंस्ट्रक्टर का जरूरी है कि वो सुपर को यूज करके पैरेंट क्लास के कंस्ट्रक्टर को पहले कॉल करे तो अगर हमें इस एरर से बचना है तो हर बार हम अपने कंस्ट्रक्टर के अंदर क्या करेंगे हम सबसे पहली चीज जो कर रहे होते हैं यूजुअली कोड्स के अंदर वो हम सुपर कीवर्ड को लिखते हैं एंड इस तरीके से वहां पेंसिस लगाते हैं तो बेसिकली यह तरीका होता है टू इवोक पैरेंट क्लास कंस्ट्रक्टर तो सुपर ये जो हमने लिखा है ये बेसिकली हम अपने इस कंस्ट्रक्टर को कॉल करने की कोशिश कर रहे हैं जैसे ही इस कंस्ट्रक्टर को हम कॉल करेंगे वैसे ही हमारे लिए दिस डॉट स्पीशीज ये जो चीज है ये सेट हो जाएगी अब इसे हम सेव कर सकते हैं रिफ्रेश कर सकते हैं एंड नाउ इफ आई ट्राई टू प्रिंट माय इंजीनियर ऑब्जेक्ट तो हमारे पास इंजीनियर के अंदर ब्रांच भी आ गई स्पीशीज भी आ गई पर्सन की सारी की सारी हमारे पास फंक्शंस आ गए अब सीक्वेंस हमें एगजैक्टली पता करना है कि कौन सा कंस्ट्रक्टर पहले कॉल हुआ तो उसका बेस्ट तरीका यह है कि सबसे पहले यहां पे प्रिंट करवा लो कसोल डलॉग एंटर चाइल्ड कंस्ट्रक्टर यहां हमने लिख दिया एंटर चाइल्ड कंस्ट्रक्टर कॉपी और यहां हमने लिख दिया एंटर पैरेंट कंस्ट्रक्टर और यहां हम लिख देते हैं एग्जिट चाइल्ड कंस्ट्रक्टर सेव कर लेते हैं इसे एंड रिफ्रेश करते हैं तो बेसिकली क्या सीक्वेंस है सबसे पहले तो हम चाइल्ड कंस्ट्रक्टर के अंदर एंटर करेंगे यानी जैसे ही हम किसी नई इंजीनियर ऑब्जेक्ट को क्रिएट करते हैं चाइल्ड क्लास के ऑब्जेक्ट को क्रिएट करते हैं तो सबसे पहले तो हम इसी कंस्ट्रक्टर के अंदर जाते हैं उसके बाद क्या होता है जैसे ही सुपर से हम अपने पेरेंट कंस्ट्रक्टर को इन्वोक करेंगे हम यहां पर आ जाएंगे तो हमारे लिए प्रिंट होकर आएगा एंटर पेरेंट कंस्ट्रक्टर फिर हम पेरेंट कंस्ट्रक्टर से सारे के सारे काम कर लेंगे फिर हम वापस यहां पर आ रहे होंगे एंड इस बार हम सारे काम कर लेंगे चाइल्ड कंस्ट्रक्टर के एंड फिर हम यहां से एग्जिट कर जाएंगे तो जनरली कंस्ट्रक्टर के अंदर दिस को यूज करने से पहले या फिर एग्जिट करने से पहले हमें क्या करना होता है अपने सुपर कंस्ट्रक्टर को कॉल करना होता है अगर हम इस लाइन को यहां से हटा देंगे तो हमारे पास एक एरर आ जाएगा आल्सो एक और इंटरेस्टिंग चीज हम कर सकते हैं ये कंसोल के जो स्टेटमेंट्स हैं इनको एक बार यहां से हटा लेते हैं फॉर एग्जांपल हमारी ये जो पर्सन की क्लास है इस पर्सन क्लास के अंदर हमें पता है हर एक पर्सन के पास अपना नाम तो हो ही सकता है तो हम चाहते हैं कि पर्सन क्लास की जब भी ऑब्जेक्ट क्रिएट हो तो उसके अंदर कंस्ट्रक्टर में एक नेम नाम की चीज पास हो एंड उसके बेसिस पर हम एक प्रॉपर्टी बना दें इसके लिए दिस डॉट नेम इट नेम तो हर पर्सन का अपना एक नाम होना चाहिए तो जब हम एक इंजीनियर टाइप का पर्सन बनाएंगे यानी जब हम एक नया इंजीनियर बनाएंगे तो हम यहां पर क्या कर सकते हैं उस इंजीनियर का नाम सेंड कर सकते हैं फॉर एग्जांपल इंजीनियर का नाम है श्रद्धा तो यहां पर हमारे पास एक वेरिएबल आ जाएगा नेम अब इस नेम वैल्यू को इस नेम वैल्यू की एक्सेस हमारे पास इस इंजीनियर के अंदर तो है ही पर अगर हमें इस नेम वैल्यू को कंस्ट्रक्टर से इस कंस्ट्रक्टर के अंदर पा पास करना है तो सेम मेथड्स को हम अपने सुपर के अंदर पास कर सकते हैं लेट्स सेव इट रिफ्रेश एंड इस बार अगर हम अपनी इंजीनियर ऑब्जेक्ट को प्रिंट करवाते हैं तो यहां पर नेम में हमारे पास आ जाएगा श्रद्धा बट अगर यहां पर सुपर के अंदर हमने नेम को पास नहीं किया तो उस केस में क्या होगा उस केस में हमारी जो इंजीनियर ऑब्जेक्ट होगी उसके अंदर नेम की वैल्यू होगी हमारे पास अनडिफाइंड क्यों क्योंकि नेम हमने इंजीनियर को तो दे दिया बट वो फाइनली अपने पैरेंट क्लास को पास करने के लिए हमें क्या करना पड़ेगा सुपर को कॉल करना पड़ेगा और सुपर के अंदर अपने उस वेरिएबल को पास करना पड़ेगा तो इसीलिए ऊपर कीवर्ड काफी इंपॉर्टेंट होता है जब भी इन्हेरिटेंस हो रही होती है इन्हेरिटेंस के टाइम पे अगर चाइल्ड क्लास को पेरेंट क्लास के कंस्ट्रक्टर को कुछ इंपॉर्टेंट इंफॉर्मेशन पास ऑन करनी होती है तो वो पास ऑन होती है थ्रू दिस सुपर कीवर्ड इसके अलावा सुपर को हम अपनी जो पैरेंट क्लास होती है उसके कुछ-कुछ मेथड्स को इवोक करने के लिए यूज़ कर सकते हैं फॉर एग्जांपल ये जो वर्क क्लास है हर इंजीनियर क्या करता है पहले ईट करता है फिर वर्क करता है फॉर एग्जांपल दिस इज एन एग्जांपल तो यहां पर अगर मुझे सबसे पहले सुपर क्लास के ईट मेथड को कॉल करना है तो उसके लिए हम लिखेंगे सुपर डॉट ईट इसको सेव कर लेते हैं रिफ्रेश करते हैं इस बार अगर हम लिखें इनियर ऑब्जेक्ट डट वर्क तो उस केस में पहले ईट होगा उसके बाद हमारा वर्क कंप्लीट हो रहा होगा बट अगर यहीं पर हम लिखते सिर्फ ईट सेफ रिफ्रेश तो उस केस में हमारे पास एरर आ जाता व्हाई बिकॉज़ ईट इज़ नॉट डिफाइंड तो इसीलिए जो सुपर क्लास यानी जो पेरेंट क्लास के मेथड्स एंड प्रॉपर्टीज होते हैं उनको डायरेक्टली ऐसे एक्सेस नहीं कर सकते तो उसके लिए हमें सुपर कीवर्ड के थ्रू उनको एक्सेस करना होता है सो दैट इज़ व्हाई दिस कीवर्ड इज़ रियली रियली इंपोर्टेंट इंटरव्यूज के अंदर मेथड ओवरराइड क्या होती है सुपर कीवर्ड कैसे काम करता है इन्हेरिटेंस क्या होती है एक्सटेंड कीवर्ड किस लिए यूज होता है ये सारे के सारे ऐसे सवाल हैं जो हमसे जावास्क्रिप्ट के इंटरव्यूज के अंदर पूछे जा सकते हैं अब नेक्स्ट हम बात करने वाले हैं अबाउट आवर प्रैक्टिस क्वेश्चंस प्रैक्टिस क्वेश्चन के अंदर सबसे पहला क्वेश्चन है यू क्रिएटिंग अ वेबसाइट फॉर योर कॉलेज हम कॉलेज के लिए अपनी कोई वेबसाइट बना रहे हैं हमें उसके लिए क्रिएट करनी है क्लास कॉल्ड यूजर विद टू प्रॉपर्टीज यानी एक यूजर क्लास क्रिएट करने के लिए हमें सिंपली लिखना पड़ेगा क्लास एंड हमारी यूजर क्लास और उसके अंदर दो प्रॉपर्टीज होंगी एक हमारे पासस ने नेम होगा एक हमारे पास ईमेल होगा हर एक यूजर के लिए नेम होगा एंड हर एक यूजर के लिए हमारे पास ईमेल होगा इट आल्सो हैज अ मेथड कॉल्ड व्यू डटा दैट अलाउ यूजर टू व्यू वेबसाइट डाटा तो इस केस में वेबसाइट का क्योंकि डेटा तो है नहीं तो व्यू डेटा के लिए हम सिर्फ प्रिंट करवा देंगे यानी कुछ कसोल लॉग करवा देंगे इस मेथड के अंदर तो ये एक व्यू डाटा नाम का हमें मेथड बनाना है कि हर जो यूजर है इस क्लास के जितनी भी ऑब्जेक्ट होंगी सारी की सारी वेबसाइट के डाटा को व्यू कर पाए देख पाएं तो उसके लिए सबसे पहले अपने कोड पर आ जाते हैं यहां पर हम एक क्लास क्रिएट करेंगे कॉल्ड यूजर यह हमारी यूजर क्लास होगी हर क्लास के अंदर हम अपना कंस्ट्रक्टर बना सकते हैं अब कंस्ट्रक्टर के अंदर हर यूजर के लिए उसका नेम एंड ईमेल होगा ये जो नेम एंड ईमेल की इंफॉर्मेशन है इसे हम ले लेंगे इन दिस कंस्ट्रक्टर एज एन आर्गुमेंट हम लिख सकते हैं दिस ड नेम इज इक्वल टू नेम एंड दिस डॉ ईमेल इ इक्वल टू ईमेल उसके साथ में हमारे पास एक मेथड होगा कॉल्ड व्यू डाटा व्यू डाटा के अंदर हम सिंपली कसोल डट लॉग कर सकते हैं सम डेटा तो यहां हम अपने डाटा को प्रिंट करवा सकते हैं सो दिस इज माय वेबसाइट डाटा या इन फैक्ट हम चाहे तो कोई एक नॉर्मल सा वेरिएबल बना सकते हैं लेट डेटा इज इक्वल टू सीक्रेट इंफॉर्मेशन इस तरीके का कुछ डेटा नाम का हमने वेरिएबल बना लिया दिस इज अ वेरी सिंपल एग्जांपल जनरली वेबसाइट्स के अंदर डेटा ऐसे स्टोर नहीं होता है ये मैं बहुत बेसिक चीज आपको दिखा रही हूं पर हां यहां पर अगर हम व्यू डाटा करना चाहते हैं तो डेटा को दिखाने के लिए हम लिख सकते हैं डटा इज इक्वल टू माय डाटा इसको कर लिया सेव एंड अब हम चाहे तो अपने लिए अपनी यूजर ऑब्जेक्ट को बना सकते हैं लेट लेट्स सपोज हमारे पास स्टूडेंट वन आया हमारी क्योंकि कॉलेज की वेबसाइट है तो इसमें स्टूडेंट वन बन सकता है स्टूडेंट वन हमारा नया यूजर है उसके बाद स्टूडेंट टू आया स्टूडेंट टू इज आल्सो अ न्यू यूजर हमारे पास स्टूडेंट थ आया दो स्टूडेंट्स ले लेते हैं हर स्टूडेंट के लिए उसका नेम एंड ईमेल होना चाहिए तो यहां पर हम नेम पास कर सकते हैं लेट्स सपोज द फर्स्ट स्टूडेंट इज श्रद्धा द ईमेल इज एसी @ email.com सम फेक ईमेल एंड दूसरा वी कैन राइट अमन अमन @ email.com यह हमारे पास दो ईमेल्स आ गए दो यूजर्स आ गए अब इन यूजर्स का डाटा प्रिंट करने के लिए वी कैन सिंपली राइट हमारा जो स्टूडेंट वन है उसका डाटा प्रिंट हो जाए हमारे लिए तो यह स्टूडेंट वन आ गया स्टूडेंट वन के पास ईमेल भी है नेम भी है साथ के साथ फंक्शन भी है अगर स्टूडेंट वन चाहे तो डाटा को व्यू कर सकता है स्टूडेंट वड व्यू डाटा तो क्या हुआ डाटा हमारे लिए प्रिंट होकर आ गया ऐसे ही स्टूडेंट टू भी डाटा को व्यू कर सकता है और सिर्फ स्टूडेंट्स नहीं होंगे कॉलेज की वेबसाइट है अगर तो उसमें सिर्फ स्टूडेंट्स यूजर्स नहीं होंगे टीचर्स भी यूजर हो सकते हैं तो लेट टीचर वन इज इक्वल टू न्यू यूजर और टीचर्स भी कुछ-कुछ नाम हो सकते हैं जैसे हो सकता है कॉलेज के अंदर देयर सम डीन एंड उनकी कोई ईमेल हो न @ college.com इसको कर लेते हैं सेव तो हमारी जो टीचर वन होंगी अगर टीचर वन को व्यू डाटा करना है तो टीचर भी डाटा को व्यू कर सकती है वेबसाइट के ऊपर अगर स्टूडेंट को डेटा व्यू करना है तो डॉट व्यू डटा तो स्टूडेंट भी अपना जो डाटा है उसे व्यू कर सकते हैं वेबसाइट के ऊपर इट विल वर्क बोथ वेज तो इस तरीके से अलग-अलग तरीके के जो यूजर्स हैं वो हम यहां पर क्रिएट कर सकते हैं वैसे और एक बेटर यानी लेवल अप करने का तरीका होगा कि स्टूडेंट नाम की एक और क्लास बनाई जाए जिसमें स्टूडेंट के हिसाब से एक्स्ट्रा इंफॉर्मेशन हो और वो इस यूजर क्लास को इन्हेरिटेंस की प्रॉपर्टीज को इन्हेरिटेंस एक टीचर की अलग क्लास बनाई जाए जो इसकी प्रॉपर्टीज को इन्हेरिटेंस टीचर के पास ये सारे फंक्शंस तो होंगे ही प्लस एक्स्ट्रा फंक्शंस होंगे जैसे मार्क्स को अपडेट कर पाने की एक्सेस स्टूडेंट के पास ये सारे फंक्शंस तो होंगे ही प्लस एक्स्ट्रा फंक्शन होंगे जैसे अपना चाहे तो एड्रेस अपडेट कर सकता है स्टूडेंट अपना चाहे तो नाम चेंज कर सकता है स्टूडेंट तो उस तरीके से एक पूरा सिस्टम है जो बनाया जा सकता है क्लासेस एंड ऑब्जेक्ट्स के अराउंड नेक्स्ट हमारे पास एक और पार्ट है इसी प्रैक्टिस क्वेश्चन का क्रिएट अ न्यू क्लास कॉल्ड एडमिन व्हिच इन्हेरिटेंस इट टू एडिट वेबसाइट डाटा यानी हमें एक नई क्लास बनानी है अपने लिए कॉल्ड एडमिन जो हमारे यूजर क्लास से इन्हेरिटेंस तो क्लास एडमिन एक्सटेंड्स यूजर क्लास और यहां पर क्या होगा एक्सटेंड्स के बाद वी हैव टू ऐड अ न्यू मेथड कॉल्ड एडिट डाटा इसके अंदर एडिट डाटा नाम का एक नया मेथड होगा जो हमारे डटा को एडिट कर पाएगा जैसे यह जो डेटा वेरिएबल है इसे बेसिकली एडिट कर पाएगा और यहां पर डेटा की वैल्यू को हम कुछ भी कर सकते हैं सम न्यू वैल्यू लेट्स सपोज दिस इज द न्यू एडिटेड वैल्यू ऑफ डाटा अब यह चीज हमें ध्यान रखनी है कि हमारा जो यूजर है वो हमने बेसिक लेवल का एक यूजर बनाया है जिसको एडिट एक्सेस नहीं दे रखी पर क्योंकि एडमिन है एडमिन सारी चीजें एडिट कर सकते हैं तो उसे हमने एडिट एक्सेस दिया तो वो यहां पे एक तरीके से हम डिपिक्ट करने की कोशिश कर रहे हैं यूजिंग क्लासेस एंड ऑब्जेक्ट्स तो अभ हम एक नया यूजर बना सकते हैं वी कैन कॉल दिस यूजर एडमिन वन एडमिन व इ इक्वल टू न्यू एडमिन अब यह जो एडमिन है अगर हम इसे सिंपली इस तरीके से क्रिएट करेंगे ऑल दो इस तरीके से क्रिएट करना पॉसिबल है सेव किया रिफ्रेश किया कोई एरर नहीं आया एडमिन वन को प्रिंट करवाएंगे तो भी एरर नहीं आएगा बट एडमिन वन के पास ईमेल एंड नेम नहीं है क्योंकि उन वेरिएबल को हमने पास ही नहीं किया तो इसीलिए जब एडमिन को क्रिएट कर रहे हैं तो यहां पे हमें नेम एंड ईमेल पास करना पड़ेगा इसको कह देते हैं एडमिन इसको कह देते हैं एडमिन @ college.com तो ये इंफॉर्मेशन आ गई पर ये इंफॉर्मेशन प्रोसेस करने के लिए हमें कंस्ट्रक्टर चाहिए तो यहां हमें उस कंस्ट्रक्टर को क्रिएट करना पड़ेगा जिसके पास क्या आ रहा है जिसके पास हमारा नेम एंड ईमेल आ रहा है और जब भी हम चाइल्ड क्लास के अंदर कंस्ट्रक्टर को क्रिएट करते हैं हमें पेरेंट के कंस्ट्रक्टर को कॉल करना पड़ता है और पैरेंट के कंस्ट्रक्टर को कॉल करने के लिए हम अपने सुपर कीवर्ड का यूज करते हैं जिसमें हम पास कर देंगे अपना नेम एंड ईमेल इसे अब सेव कर लेते हैं लेट्स रिफ्रेश इट एडमिन अब एडमिन के अंदर नेम एंड ईमेल आ गया है साथ के साथ एडमिन चाहे जैसे अभी डेटा की वैल्यू क्या है डेटा की वैल्यू ये है लेकिन एडमिन डटा को चेंज कर सकता है एडमिन वन चाहे तो अपने डटा को एडिट कर सकता है तो अब अगर हम डेटा की वैल्यू को चेक करेंगे तो इट विल बी सम न्यू वैल्यू तो इस तरीके से हमारी क्लासेस एंड ऑब्जेक्ट्स काम करती है लॉजिकली जावास्क्रिप्ट के प्रोग्राम्स के अंदर अब ये तो हो गया हमारा प्रैक्टिस क्वेश्चंस एंड दिस वाज ऑल अबाउट क्लासेस एंड ऑब्जेक्ट जिसमें हमने इन्हेरिटेंस सुपर न्यू बहुत सारे डिफरेंट डिफरेंट एक्सटेंट्स कीवर्ड्स को देखा डिफरेंट डिफरेंट कांसेप्ट को देखा जैसे इन्हेरिटेंस हो गया जैसे मेथड ओवरराइडिंग हो गया इसके अलावा एक और प्रोग्रामिंग का एक जनरल कांसेप्ट होता है जो मैं आपके साथ शेयर करना चाह रही हूं व्हिच इज रिलेटेड टू एरर हैंडलिंग जैसे अगर आपने जावास्क्रिप्ट के कोड में नोटिस किया हो कि वैसे दिस टॉपिक इज नॉट रिलेटेड टू क्लासेस एंड ऑब्जेक्ट्स यह अलग ही टॉपिक है रिलेटेड टू एरर हैंडलिंग जैसे अगर हम अपने कोड के अंदर बहुत सारी लाइंस ऑफ कोड लिखते हैं फॉर एग्जांपल पहले हमने कोई कैलकुलेशन कर लिया एक वेरिएबल बना दिया लेट a = 5 फिर हमने एक वेरिएबल बना दिया लेट b = 10 इस तरीके से फिर हम कसोल डलॉग करवा रहे हैं a = यहां हमने a की वैल्यू को प्रिंट करवा दिया इसी तरीके से हम कसोल डलॉग करवा रहे हैं b = और हमने b की वैल्यू को प्रिंट करवा दिया फिर यहां हम कसोल डलॉग करवा रहे हैं a + b = a + b एंड इसी तरीके से बहुत लंबा सा कोड लिखा हुआ है जिसके अंदर बहुत सारी लाइंस ऑफ कोड है एंड कायदे से ये सारी की सारी लाइंस ऑफ कोड हमारे लिए प्रिंट होकर आनी चाहिए बट मान लेते हैं कोड के बीच में हमने कहीं एरर कर दिया लाइन नंबर सिक्स पे हमसे कुछ एरर हो गया क्या एरर हो गया एरर बेसिकली हो गया कि यहां मैंने a + c लिख दिया और c क्या है c कोई वेरिएबल एजिस्ट ही नहीं करता तो उस केस में क्या होगा हम जैसे ही रिफ्रेश करेंगे यहां पर लाइन नंबर सिक्स पर हमारे पास एरर आ जाएगा एरर आ रहा है सी इज नॉट डिफाइंड ठीक है हमारे पास एरर आ गया बट एरर आने की वजह से जावास्क्रिप्ट के अंदर जो बाकी का सारा का सारा कोड होता है वो रन करना बंद कर देता है यानी सिर्फ शुरुआत की तीन लाइन ही प्रिंट हुई उसके बाद वाला जो कोड है वो कभी एग्जीक्यूट ही नहीं हुआ इवन दो इन लाइंस के अंदर कोई एरर नहीं था पर फिर भी ये लाइंस कभी एग्जीक्यूट नहीं होती तो इसीलिए ये जो एरर्स आते हैं रैंडम कोड के अंदर एरर आना पॉसिबल है एरर्स आ सकते हैं कोड के अंदर तो इसीलिए एरर्स को हैंडल करना भी बहुत ज्यादा जरूरी होता है और एरर हैंडलिंग के लिए जावास्क्रिप्ट के अंदर वी हैव समथिंग कॉल्ड ट्राई कैच इन्हें हम ट्राई कैच ब्लॉक्स भी कहते हैं जब भी हमें किसी कोड के लिए ऐसा लगता है कि इस कोड के अंदर कोई एरर आ सकता है हमें नहीं पता एगजैक्टली आएगा या नहीं आएगा लद हम तो हमेशा होप करते हैं कि हमारे कोड के अंदर कोई एरर ना आए बट अगर हमें कभी ऐसा लगता है कि इस कोड के अंदर कोई ना कोई एरर आ सकता है हो सकता है कोई वेरिएबल ऐसा हो जो इनिश इइ ना हुआ हो या कुछ और प्रॉब्लम हो सकती है तो उस कोड को जो हमारा नॉर्मल कोड होता है उस कोड को हम एक ट्राई ब्लॉक के अंदर लिखते हैं तो सिंपली अगर हमें शक है कि इस लाइन के अंदर कोई एरर आ सकता है तो हम सिंपली क्या करेंगे एक ट्राई ब्लॉक बनाएंगे ये ट्राई हमारा एक कीवर्ड है और ये हमने ब्लॉक बना लिया और इसके अंदर हम अपनी इस लाइन को ऑफ कोड को लिखते हैं अब जैसे ही हम ट्राई ब्लॉक बनाएंगे उसके साथ हमें कैच ब्लॉक बनाना पड़ेगा और कैच ब्लॉक के अंदर बेसिकली हम अपने एरर को कैच कर लेते हैं तो ट्राई के अंदर जितना भी कोड होता है अगर उस कोड के अंदर एरर आ गया तो वहीं से हम अपने कैच ब्लॉक के अंदर चले जाते हैं और कैच ब्लॉक का काम होता है टू हैंडल आवर एरर्स सो कैच ब्लॉक इज बेसिकली टू हैंडल आवर एरर्स और कैच ब्लॉक के अंदर एक स्पेशल आर्गुमेंट हम ले सकते हैं एरर आर्गुमेंट जो हमारी एरर ऑब्जेक्ट होती है कि एगजैक्टली क्या एरर आया तो इस बार यहां पर हम एक आर्गुमेंट ले सकते हैं एरर और यहां कसोल डॉट लॉग करवा सकते हैं अपने एरर ऑब्जेक्ट को तो अगर हमें इस लाइन के ऊपर शक है कि यहां पर एरर आ सकता है तो इसे हमने ट्राई के अंदर लिख दिया और कैच के अंदर हम एरर को कैच कर सकते हैं लद हम तो ये होप करेंगे कि ट्राई के अंदर जितना भी कोड लिखा है उसके अंदर कोई एरर ना आए कैच के अंदर हमें कभी जाना ना पड़े हमें कैच की जरूरत ही ना पड़े पर फॉर सम सिनेरियो वी डू इट इन प्रोग्रामिंग इसको रिफ्रेश कर लेते हैं इस बार रिफ्रेश किया तो क्या हुआ यहां पर हम हमारा एरर हमारे लिए प्रिंट होकर आ गया ये एरर नहीं है ये कसोल डलॉग का स्टेटमेंट है जिसने हमारे एरर को प्रिंट करवा दिया है पर बाकी का कोड वैसे के वैसे चल रहा है इस बार हमारा कोड रुका नहीं क्यों क्योंकि हमने अपने ट्राई कैच ब्लॉक को यूज कर लिया जहां हमें शक था कि यहां पर कोई एरर आ सकता है सो दिस वाज ऑल अबाउट क्लासेस ऑब्जेक्ट्स इनहेरिटेंस एरर हैंडलिंग इसमें आई अंडरस्टैंड कि क्लासेस एंड ऑब्जेक्ट से रिलेटेड जो हमारे कुछ टॉपिक्स थे जैसे इन्हेरिटेंस हो गया जैसे मेथड ओवरराइडिंग हो गया एंड और भी काफी सारे डिफरेंट कांसेप्ट वो शुरुआत में हमें थोड़ी स थोरेट्स चाहे उतने ज्यादा हमारे गेम्स में या प्रोजेक्ट बनाने में उतने ज्यादा फ्रीक्वेंसी जो हमारे पास होते हैं एंड उसके साथ-साथ ये इंपॉर्टेंट पॉइंट ऑफ़ व्यू से भी इंपोर्टेंट होते हैं इसीलिए आपको कवर कराए गए हैं तो इनके आप नोट्स बनाकर अच्छे से रख सकते हैं दोबारा हमारी जो पूरी क्लास के स्लाइड्स हैं वो आपको नीचे डिस्क्रिप्शन बॉक्स में अवेलेबल मिल जाएंगे वहां से जाकर आप उन्हें डाउनलोड कर सकते हैं हाय एवरीवन तो अब हम शुरुआत करने वाले हैं अपने चैप्टर के साथ अब इस चैप्टर के अंदर जिन कॉन्सेप्ट्स को हम सीख रहे होंगे बेसिकली उन कॉन्सेप्ट्स को समझने के बाद उनको सीखने के बाद उस तरीके से कोड करने के बाद हम इन जनरल कह सकते हैं कि हमारी जावास्क्रिप्ट के ऊपर पकड़ अच्छी है और हमें जावास्क्रिप्ट के अंदर अच्छे से प्रोग्रामिंग करनी आती है अब इस चैप्टर के अंदर हम एगजैक्टली पढ़ने के हवाले इस चैप्टर के अंदर हम जावास्क्रिप्ट के अंदर एसिंक्रोनस प्रोग्रामिंग जो होती है उसको एक्सप्लोर करने वाले हैं एसिंक्रोनस प्रोग्रामिंग क्या होती है हो सकता है ये शब्द हमने पहली बार सुनी हो उसको हम डिटेल में अभी पढ़ने वाले हैं तो उसकी टेंशन नहीं लेनी इस चैप्टर के अंदर बहुत सारे ऐसे कॉम्प्लेक्शन के मतलब धीरे-धीरे हम समझ रहे होंगे और एट द एंड ऑफ द चैप्टर हमें सारी चीजें समझ आ जाएंगी अब एट दी एंड ऑफ द चैप्टर चैप्टर हम एक कंक्लूजन निकालेंगे कि इन जनरल जावास्क्रिप्ट के अंदर जब हम एसिंक्रोनस चीजें करने की कोशिश कर रहे होते हैं तो वहां जनरली हम अस सिंक अवेट को यूज़ करते हैं बिकॉज़ दे आर जनरली बेटर दन प्रॉमिस चेंस एंड प्रॉमिस चेंस आर जनरली बेटर दन कॉल बैक हेल बेसिकली इस कंक्लूजन पे थोड़ा सा हम आने की कोशिश करेंगे एट दी एंड ऑफ़ द चैप्टर यानी धीरे-धीरे अब ये तीनों ही जो टर्म्स हैं ये कंप्लीट नई है हमारे लिए हमने आज तक नहीं सुना प्रॉमिस चेंस क्या होती हैं असं कावेट क्या होता है कॉलबैक हिल क्या होता है तो ये सारी चीजें हम सीखने वाले हैं इस चैप्टर के अंदर तो हम शुरुआत करेंगे कॉल बैक्स के साथ फिर जानेंगे कॉलबैक हेल क्या होता है फिर जानेंगे कैसे इनको फाइट करने के लिए प्रॉमिस आए और फिर प्रॉमिस चेंज क्या होती है फिर जानेंगे कैसे उससे भी एक बेटर तरीका हमारे पास अंक अवेट होता है तो धीरे-धीरे हम सारे के सारे कॉन्सेप्ट्स पर पकड़ बनानी जो है वो अपनी स्टार्ट करेंगे तो सबसे पहले शुरुआत करते हैं यह जानकर कि सिंक क्या होता है यानी सिंक्रोनस और एसिंक्रोनस इन दोनों शब्दों का मतलब क्या होता है प्रोग्रामिंग के अंदर सिंक्रोनस का मतलब होता है कि अगर आपने एक सीक्वेंस में यानी आपने फर्स्ट लाइन ऑफ़ कोड लिख दिया हमने सेकंड लाइन ऑफ़ कोड लिख दिया हमने थर्ड लाइन ऑफ़ कोड लिख दिया तो जिस सीक्वेंस में हमने कोड लिखा है उसी सीक्वेंस में हमारा कोड का एग्जीक्यूशन होगा सो सिंक्रोनस मींस द कोड रंस इन अ पर्टिकुलर सीक्वेंस ऑफ़ इंस्ट्रक्शंस गिवन इन द प्रोग्राम ईच इंस्ट्रक्शन वेट्स फॉर द प्रीवियस इंस्ट्रक्शन टू कंप्लीट इट्स एग्जीक्यूशन यानी एक हम सिंपल सा कोड लिखते हैं जावास्क्रिप्ट के अंदर यहां पर हमने अपने जावास्क्रिप्ट फोल्डर के अंदर एक index.htm बनाई है जिसके अंदर सिर्फ बॉयलर प्लेट कोड है उसे हमने एक स्क्रिप्ट के साथ कनेक्ट कर रखा है और app.js अभी हमारे पास कंप्लीट खाली है अब app.js इसके अंदर सिंपल सा हम एक कोड लिखेंगे console.log 1 ये हमारी फर्स्ट लाइन हो गई कोड की उसके बाद सेकंड लाइन लिखेंगे console.log 2 उसके बाद अपनी थर्ड लाइन लिखेंगे console.log 3 ये हमने तीन लाइन ऑफ़ कोड लिख दी इसको सेव कर लिया एंड यहां पर आ जाएंगे हमने अपनी index.htm को खोला हुआ है और हमने राइट क्लिक करके इंस्पेक्ट किया हुआ है इंस्पेक्ट के बाद हम कंसोल विंडो पर हैं जैसे ही रिफ्रेश करेंगे हमारे पास प्रिंट होके आ गया 1 2 3 दिस इज कॉल्ड सिंक्रोनस प्रोग्रामिंग सिंक्रोनस प्रोग्रामिंग कैसे काम करती है जिस ऑर्डर में यानी पहले अगर हमने वन प्रिंट करवाया तो वन ही प्रिंट हुआ टू प्रिंट करवाया तो टू ही प्रिंट हुआ थ्री प्रिंट करवाया तो थ्री ही प्रिंट हुआ और सिंक्रोनस प्रोग्रामिंग में क्या होता है ये एक इंस्ट्रक्शन है इंस्ट्रक्शन यानी एक काम करने को बोला जा रहा है यहां पे दूसरा काम करने को बोला जा रहा है यहां पे तीसरा काम करने को बोला जा रहा है दूसरा काम क्या करेगा पहले वेट करेगा कि पहले वाला काम जब कंप्लीट होगा यानी पहले वन प्रिंट होना चाहिए तभी टू आकर प्रिंट होगा पहले टू प्रिंट होना चाहिए तभी थ्री आकर प्रिंट होगा तो इस तरीके से हमारी सिंक्रोनस प्रोग्रामिंग काम करती है यानी सिंक में चल रही है सारी चीजें अब अभी तक जावास्क्रिप्ट के अंदर चाहे जो हमने अपने मिनी प्रोजेक्ट्स के ऊपर काम किया है चाहे हमने जितनी भी प्रोग्रामिंग की है वो सारी की सारी प्रोग्रामिंग सिंक्रोनस प्रोग्रामिंग थी यानी जिस सीक्वेंस में हमने इंस्ट्रक्शंस को लिखा है उसी सीक्वेंस में वो इंस्ट्रक्शंस एग्जीक्यूट हो रही है अब हम सीखने वाले हैं कि एसिंक्रोनस प्रोग्रामिंग क्या होती है एसिंक्रोनस प्रोग्रामिंग कहती है कि कभी-कभार अगर हम सिंक्रोनस प्रोग्रामिंग करते हैं ना यानी कभी-कभार अगर हमने सीक्वेंस में इंस्ट्रक्शन लिख दी को तो कभी-कभार हो सकता है बीच वाली कोई इंस्ट्रक्शन हो जो ज्यादा टाइम ले रही हो काम कंप्लीट करने में अब कसोल डलॉग तो ब बस प्रिंट करवाना होता है कंसोल विंडो पर वो तो बहुत जल्दी इंस्टंटे नियस काम हो जाता है पर कुछ काम ऐसे होते हैं जो कुछ सेकंड ले सकते हैं तो वो टाइम ले सकते हैं कंप्लीट होने में तो ऐसे में अगली वाली इंस्ट्रक्शंस को वेट क्यों करना पड़े उनके लिए तो यहां से कांसेप्ट निकल के आता है एसिंक्रोनस प्रोग्रामिंग का और इस कांसेप्ट को हम नेक्स्ट चैप्टर में इतने अच्छे से इसका प्रैक्टिकल पॉइंट ऑफ व्यू देखेंगे कि किस तरीके से इंप्लीमेंट होता है क्योंकि नेक्स्ट चैप्टर के अंदर हम एपीआई के बारे में पढ़ेंगे एपीआई क्या होती है एपीआई को हम एक सिस्टम की तरह समझ सकते हैं वैसे तो इसे हम नेक्स्ट चैप्टर के अंदर डिटेल में पढ़ेंगे बेसिकली एपीआई को मान लो कि किसी दूसरे व्यक्ति ने कोई ऐसा सिस्टम बनाया हुआ है जिस पर हम कुछ रिक्वेस्ट भेज सकते हैं और रिक्वेस्ट के बदले वो हमें कुछ डाटा रिटर्न करके दे सकता है जैसे फॉर एग्जांपल वेदर एपीआई हमारे पास होती है तो उसमें आप रिक्वेस्ट भेजो कि मुझे दिल्ली का वेदर चाहिए तो वो क्या करेगा दिल्ली के वेदर का डाटा हमें रिटर्न कर देगा या फिर काफी सारी फाइनेंस से रिलेटेड एपीआई होती है कि मुझे चाहिए कि आज गोल्ड का प्राइस या फिर आज हमारे निफ्टी 50 का प्राइस क्या चल रहा है तो एपीआई क्या करेगी एपीआई हमें वो डाटा रिटर्न करके दे देगी एक बार हमारे पास वो डेटा आ गया फिर हम उसको अपनी वेबसाइट के ऊपर दिखा सकते हैं तो काफी सारी जो जनरल वेबसाइट्स होती हैं जो हमें फाइनेंस से रिलेटेड इंफॉर्मेशन देते हैं कि इस कंपनी का स्टॉक यहां पर चल रहा है ये इतना ऊपर जा रहा है इतना नीचे जा रहा है तो जनरली वो बैक एंड के अंदर किसी ना किसी एपीआई को यूज़ कर रहे होते हैं टू फेच दैट डाटा कुछ होती हैं जो अपना बिल्ड करती हैं कुछ होती हैं जो थर्ड पार्टी एपीआई को यूज़ करती हैं तो यहां पर कभी-कभार हो सकता है हमने कोड लिखा कुछ प्रिंट करवाया कुछ प्रिंट करवाया फिर हमें क्या चाहिए हमें एपीआई से डेटा चाहिए अब एपीआई से डेटा फेच करने में हो सकता है एपीआई को क्योंकि हमने तो लिखा नहीं हम तो कंट्रोल नहीं कर रही है सिस्टम को तो एपीआई हो सकता है 2 सेकंड लगा दे डाटा को भेजने में अब 2 सेकंड प्रोग्रामिंग के अंदर डिले वाइज काफी बड़ा डिले होता है हो सकता है एपीआई के अंदर कुछ फेलियर हो गया और वो 10 सेकंड बाद डाटा भेज रही है तो क्या इसके बाद वाला जो काफी सारा कोड है उसे वेट करना चाहिए कि एक बार डाटा आएगा तभी बाकी का कोड रन होगा जो शायद कोड इस एपीआई डाटा पे डिपेंड भी नहीं करता तो ऐसे केसेस में सिंक्रोनस प्रोग्रामिंग करना अच्छी चीज नहीं होती ऐसे केसेस में हम एसिंक्रोनस प्रोग्रामिंग की तरफ जाते हैं अब ये एसिंक्रोनस प्रोग्रामिंग कहने का क्या मतलब है एसिंक्रोनस प्रोग्रामिंग का कांसेप्ट ये कहता है कि मान लेते हैं हमारे पास यह हमारी कोड वन है लाइन वन है यानी इंस्ट्रक्शन वन है यहां पे पे कोड टू लिखा हुआ है यहां पे लेट्स सपोज एपीआई का कोड लिखा हुआ है यहां पे कोड थ्री लिखा हुआ है यहां पे कोड फोर लिखा हुआ है तो एसिंक्रोनस प्रोग्रामिंग कांसेप्ट कहता है कोड वन रन कर दो नॉर्मली रन हो रहा है कोड टू रन कर दो नॉर्मली रन हो रहा है अगर ये एपीआई वाला कोड या यहां पर कोई भी कोड हो सकता है कोई भी इंस्ट्रक्शंस हो सकती थी अगर ये इंस्ट्रक्शन ज्यादा टाइम लेती है तो इसको पैरेलली रन होने दो और आप आगे का एग्जीक्यूट करते रहो और जैसे ही मान लो 5 सेकंड बाद ये रन हो गया फिर इसका आउटपुट दिखा दो तो इस तरीके से हमें इस इंस्ट्रक्शन के कंप्लीट होने का वेट नहीं करना पड़ेगा तो इस तरीके से रियल टाइम सिस्टम्स काम कर कि किसी इंस्ट्रक्शन को एग्जीक्यूट होने में ज्यादा टाइम लग रहा है तो उसके लिए वेट नहीं करना हमें हमें क्या करना है आगे बढ़ जाना है अब इसका एक एग्जांपल देखते हैं जावास्क्रिप्ट के अंदर हमारे पास जावास्क्रिप्ट के अंदर एक स्पेशल चीज होती है इट इज कॉल्ड सेट टाइम आउट सेट टाइम आउट हमारे पास एक फंक्शन होता है सेट टाइम आउट फंक्शन एगजैक्टली क्या करता है ये किसी एक फंक्शन को एग्जीक्यूट करता है जैसे फॉर एग्जांपल मैंने एक फंक्शन बनाया लेट्स मेक अ फंक्शन कॉल्ड हेलो हेलो फंक्शन क्या करता है कसोल डलॉग करता है हेलो यह मेरा हेलो फंक्शन है सेट टाइम आउट क्या करता है किसी भी फंक्शन को एग्जीक्यूट करता है पर वो कब एग्जीक्यूट होगा उसको हम डिसाइड कर सकते हैं जैसे मुझे किसको एग्जीक्यूट करना है मुझे अपने हेलो फंक्शन को एग्जीक्यूट करना है कब करना है लेट्स सपोज मुझे इसे 2 सेकंड बाद एग्जीक्यूट करना है तो हम यहां पर सेकंड में टाइम आउट देते हैं टाइम आउट इज बेसिकली कितने टाइम बाद आप अपना काम करवाना चाहेंगे तो इस टाइम को हम मिली सेकंड्स में देते हैं 2 मिली सेकंड्स सॉरी 2 सेकंड्स इज इक्वल टू 2000 मिली सेकंड्स तो इस तरीके से 2 सेकंड को हमने यहां पर 2000 कर दिया तो सेट टाइम आउट कहता है कि हेलो फंक्शन को एग्जीक्यूट करा दूंगा कितने टाइम बाद 2 सेकंड बाद अब इसका एग्जीक्यूशन एक बार देखते हैं जैसे ही हम रिफ्रेश करेंगे एक दो 2 सेकंड हमने वेट किया और फिर हमारे लिए हेलो प्रिंट होकर आया यहीं पर अगर हम 4 सेकंड कर देते तो जैसे ही रिफ्रेश करते 1 2 3 4 एंड अब 4 सेकंड्स बाद हमारे लिए हेलो प्रिंट होक आ गया तो यह बेसिकली सेट टाइम आउट इतने टाइम बाद हमारे लिए किसी ना किसी फंक्शन को एग्जीक्यूट कर देता है काम को करके दे देता है अब हम चाहे तो अपने फंक्शन को डायरेक्टली यहां पर भी लिख सकते हैं वी कैन क्रिएट एन एरो फंक्शन और इस एरो फंक्शन के अंदर ही हम अपना ये हेलो वाला काम कर सकते हैं तो हमें अलग से इसे बनाने की जरूरत नहीं पड़ती इस तरीके से भी हमारा सेट टाइम आउट वर्क करता है रिफ्रेश किया वन टू थ्री फर एंड फिर हमारे लिए हेलो प्रिंट होकर आ जाएगा तो चार सेकंड बाद वो काम करके दे देगा अब यहां पर ये सेट टाइम आउट है तो एक तरीके से सेट टाइम आउट क्या करता है अपना टाइम लेता है यानी ऐसा नहीं है कि इंस्टंटे नियस हमने यहां पे सेट टाइम आउट लिख दिया तो वो एकदम से आउटपुट हमें दे देगा वो क्या करेगा इतना टाइम लेगा आउटपुट देने के लिए तो अगर सेट टाइम आउट से पहले हम लिख दें console.log 1 फिर लिखें console.log 2 एंड इसके बाद लिखें console.log 3 एंड यहां लिख दें console.log 4 तो हमारी जो ये स्टेटमेंट है ये सेट टाइम आउट से बिल्कुल भी अफेक्टेड नहीं होगी पर क्या console.log 3 console.log 4 ये जो दो स्टेटमेंट है इवन दो ये इसके आउटपुट पे बिल्कुल डिपेंड नहीं करती तो क्या इन्हें अपना टाइम वेस्ट करना चाहिए 4 सेकंड वेट करने के लिए क्योंकि जनरली क्या होगा सिंक्रोनस चीजें चलेंगी तो क्या होगा पहले ये प्रिंट होगा फिर ये प्रिंट होगा फिर यहां पे चार सेकंड वेट किया जाएगा उसके बाद ये चीज आके प्रिंट होगी पर जावास्क्रिप्ट के अंदर अगर इस तरीके से हम अपना कोड लिखते हैं तो ये जो स्टेटमेंट्स हैं ये वेट नहीं करेंगी जैसे ही हम रिफ्रेश करेंगे 1 2 3 4 तो प्रिंट होंगी और एगजैक्टली 4 सेकंड बाद हमारे पास हेलो भी प्रिंट होकर आ जाएगा तो क्या किया इन स्टेटमेंट्स ने यहां पे सेट टाइम आउट के साथ 4 सेकंड वेट नहीं किया इसको कहते हैं एसिंक्रोनस प्रोग्रामिंग एसिंक्रोनस प्रोग्रामिंग कैसे काम की कि हमने वन को प्रिंट करवाने की स्टेटमेंट लिखी टू को प्रिंट करवाने की स्टेटमेंट लिखी यहां हमने सेट टाइम आउट कर दिया एपीआई की जगह सेट टाइम आउट कर दिया यानी ऐसा फंक्शन जो टाइम लेता है और यहां पे थ्री प्रिंट करवाया यहां पे फोर प्रिंट करवाया तो प्रोग्रामिंग ने देखा वन तो मैं प्रिंट कर ही सकता हूं टू भी प्रिंट कर सकता हूं अब सेट टाइम आउट है जो टाइम ले रहा है तो क्या करो इसे पैरेलली चला दो यानी इसे साइड में रख दो ये जैसे ही कंप्लीट होगा अपना आउटपुट प्रिंट कर देगा मुझे क्या करना है मुझे आगे बढ़ना है तो थ्री उसने प्रिंट करवाया फोर उसने प्रिंट करवाया जैसे ही सेट टाइम आउट का टाइम कंप्लीट हो गया फिर उसका आउटपुट प्रिंट करवा दिया यानी सेट टाइम आउट के लिए बैठ के कोड ने वेट नहीं किया कि वेट करते हैं ये कब कंप्लीट होगा फिर हम आगे का काम करेंगे ऐसा नहीं हुआ इट इज बेसिकली लाइक इमेजिनिंग कि लेट्स सपोज हमने ऑनलाइन कोई ऑर्डर किया है हम amazon2 से कोई चीज ऑर्डर करके मंगवा रहे हैं तो एक बार हमने पेमेंट कर दी तो हम वेट नहीं करते कि 24 घंटे में कुछ डिलीवर हो गया दो दिन में डिलीवर होगा तो हम बैठ के वेट ही कर रहे हैं हम चेक ही कर रहे हैं कि वो कब आएगा कब आएगा इवन दो हम चेक करते हैं बट पूरा टाइम हमारा फुल टाइम काम ही वही है चेक करेंगे तो एक बार हमने पेमेंट कर दी तो अब हम अपने नॉर्मल काम करते रहेंगे और जैसे ही वो ऑर्डर डिलीवर हो जाएगा फिर हम उस आइटम को यूज़ कर सकते हैं सो दिस इज कॉल्ड एसिंक्रोनस प्रोग्रामिंग और इस चैप्टर के अंदर एसिंक्रोनस प्रोग्रामिंग को हम डिटेल में एक्सप्लोर करने वाले हैं तो इसकी एक बार डेफिनेशन भी थोड़ी सी पढ़ लेते हैं ड्यू टू सिंक्रोनस प्रोग्रामिंग सम टाइम्स इंपोर्टेंट इंस्ट्रक्शंस गेट ब्लॉक्ड ड्यू टू सम प्रीवियस इंस्ट्रक्शन व्हिच कॉसेस अ डिले इन द यूआई अब यहां पे कसोल लॉ कहता है नहीं तो मैं तो सेट टाइम आउट का वेट करूंगा तो उससे क्या होता है डिले हो जाती चीजें काफी सारा यानी ये जो प्रिंटिंग वाला काम है ये नहीं हो पाता तो इसीलिए एसिंक्रोनस कोड एग्जीक्यूशन अलाउ टू एग्जीक्यूट नेक्स्ट इंस्ट्रक्शंस इमीडिएट यानी इसके जो बाद वाली इंस्ट्रक्शंस है ये दोनों इंस्ट्रक्शंस वो इमीडिएट एग्जीक्यूट हो जाती हैं एंड डजन ब्लॉक द फ्लो फलो एक फ्लो होता है हमारे कोड का कि कोड कैसे काम कर रहा है उसको ब्लॉक नहीं किया जाता सो दिस इज ऑल अबाउट एसिंक्रोनस प्रोग्रामिंग नेक्स्ट चीज जिसके बारे में हम बात करने वाले हैं दे आर कॉल्ड कॉल बैक्स और कॉल बैक्स को थोड़ा बहुत हम ऑलरेडी पहले पढ़ चुके हैं हमने बात की थी कि कॉल बैक क्या होता है कॉल बैक इज बेसिकली एन आर्गुमेंट टू अनदर फंक्शन जब भी किसी फंक्शन के अंदर हम दूसरा फंक्शन पास करते हैं उसे हम कॉल बैक कह देते हैं जैसे यहां पर अगर मैंने एक फंक्शन बनाया लेट्स कॉल इट कैलकुलेटर कैलकुलेटर ये हमारा फंक्शन है जो हमारे लिए काफी सारे काम कर रहा है अब इस कैलकुलेटर फंक्शन के अंदर a एंड बी दो नंबर्स हमारे पास आएंगे और हमने ऑलरेडी एक फंक्शन बनाया हुआ है कॉल्ड सम सम क्या करता है a और बी दो नंबर लेता है और उनसे कसोल डलॉग उनका सम प्रिंट करवाता है a + b और कैलकुलेटर फंक्शन के अंदर हम एक तीसरा सम फंक्शन इसको हम कह सकते हैं या सम कॉल बैक इसको हम कह सकते हैं तो जो भी ए आएंगे कैलकुलेटर फंक्शन क्या करेगा सम कॉल बैक के अंदर a और बी इनको पास कर देगा और काम करवा देगा तो बेसिकली हम कैलकुलेट गेटर को कॉल कर सकते हैं टू कैलकुलेट द सम ऑफ वन एंड टू एंड इसके अंदर हम अपने सम फंक्शन को भी पास कर सकते हैं इसको सेव कर लेते हैं रिफ्रेश करेंगे तो हमारे पास थ्री प्रिंट होक आएगा तो यहां पर कैलकुलेटर के अंदर a और b तो हमने पास ही किए पर साथ में सम पास किया सम क्या है सम एक फंक्शन है ऐसा फंक्शन जो किसी दूसरे फंक्शन के अंदर एज एन आर्गुमेंट पास होता है उसे हम कहते हैं कॉल बैक तो इसीलिए इसके नाम में हमने यहां पे कॉल बैक लिख दिया अगर हम नाम में कॉल बैक नहीं लिखते तो भी वो कॉल बैक ही रहता है एक और चीज नोट करनी है जब भी हम कॉल बैक्स को पास करते हैं इसे पेंसिस के साथ पास नहीं करना क्योंकि कि ऐसे अगर पास किया तो ये रन नहीं करेगा कोड क्योंकि पैरेंस के साथ पास करने का मतलब है कि सम फंक्शन को हम यहीं के यहीं एग्जीक्यूट कर रहे हैं सेव किया रिफ्रेश किया तो हमारे पास एरर आ जाएगा सम कॉल बैक इज नॉट अ फंक्शन क्योंकि यहां जो वैल्यू पास हुई दैट इज नॉट अ फंक्शन इसको आपने एग्जीक्यूट कर दिया और कुछ चीज प्रिंट करवा दी तो कॉल बैक्स को जब भी पास करते हैं हमें उन्हें सिर्फ अपने नाम के साथ पास करना पड़ता है विदाउट एनी पेंसिस अब हम चाहते तो यहां सम की जगह पूरा का पूरा फंक्शन भी पास कर सकते थे यानी हम चाहते तो यहां एक एरो फंक्शन पास कर सकते थे इस तरीके से हमारा एरो फंक्शन हो जाता जिसके के अंदर a एंड b दो पैरामीटर्स हमारे पास आते एंड यहां पर कसोल डलॉग करवाते हम a + b इसे कर लेते हैं सेव एंड रिफ्रेश तो इस केस में भी क्या होता है सही आउटपुट आता यानी कॉल बैक के अंदर हम किसी फंक्शन को ऑलरेडी बनाकर सिर्फ उसका नाम भी पास कर सकते हैं या फिर कंप्लीट वो फंक्शन भी हम पास कर सकते हैं वो भी वैलिड सिंटेक्स होगा ये तो हो गया सिंक्रोनस प्रोग्रामिंग के कॉलबैक इसके अलावा अभी हमने सेट टाइम आउट का एग्जांपल देखा जिसमें हमने क्या किया था जिसमें हमने एक फंक्शन बनाया कंस्ट हेलो इज इक्वल टू इस तरीके से भी एरो फंक्शन की फॉर्म में हम अपने फंक्शन को भी लिख सकते हैं कलॉग ये फंक्शन क्या करता है हेलो प्रिंट करता है अगर मैंने सेट टाइम आउट को कॉल किया और हम चाहते हैं हेलो फंक्शन एग्जीक्यूट हो कितने सेकंड बाद 3 सेकंड बाद तो यहां पर ये जो हेलो हम पास कर रहे हैं दिस इज़ आल्सो अ कॉल बैक तो सेट टाइम आउट क्या लेता है कॉल बैक लेता है तो इसे सेव करेंगे एग्जीक्यूट करेंगे तो 1 2 3 थ्री सेकंड्स बाद हमारे पास हेलो के अंदर आउटपुट प्रिंट होकर आ जाएगा तो इस तरीके से हमारे कॉल बैक्स सिंक्रोनस एंड सेट टाइम आउट के अंदर एसिंक्रोनस तरीके से भी काम करते हैं अब कॉल बैक तो हमने समझ लिया कि हमने एक आर्गुमेंट पास कर दिया किसी दूसरे फंक्शन को पर जब भी हम कॉल बैक्स को यूज करते हैं तो रियल टाइम प्रोग्रामिंग के अंदर हमारे पास एक प्रॉब्लम अराइज कर सकती है एक काफी बुरी प्रॉब्लम अराइज करती है व्हिच इज कॉल्ड कॉलबैक हेल तो इसका नाम में हेल है मतलब ये कोई बुरी चीज है अब कॉलबैक हेल क्या होता है कॉलबैक हेल होता है कि कई बार हमारी कोड के अंदर प्रोग्रामिंग करते टाइम ऐसी सिचुएशन बन जाती है जिसके अंदर हमारे पास नेस्टेड कॉल बैक्स आ जाते हैं अब ये नेस्टेड का क्या मतलब होता है नेस्टेड का मतलब होता है एक चीज के अंदर दूसरी चीज के अंदर तीसरी चीज के अंदर चौथी चीज इस तरीके से अब प्रोग्रामिंग के अंदर नेस्टिंग मैं थोड़ा सा ब्रीफ आपको दे देती हूं नेस्टिंग जब भी हम कहते हैं जब भी आप यह शब्द सुनो चाहे हम जावास्क्रिप्ट के अंदर कोडिंग कर रहे हैं चाहे हम किसी भी लैंग्वेज के अंदर कोडिंग कर रहे हैं नेस्टिंग का क्या मतलब होता है लेट्स सपोज मैंने कोई इफल्स कंडीशन लिखी मैंने लिखा कोई वेरिएबल बना देते हैं लेट ए इज इक्वल टू 19 मैंने लिखा इफ एज इज ग्रेटर दन 18 ग्रेटर दन इक्वल ट 18 तो उस केस में कुछ करना है एल्स कुछ और करना है console.log चाइल्ड प्रोबेबली चाइल्ड नहीं बोलेंगे वैसे उसकी भी कई कंडीशंस होती हैं इसमें भी इफ एज ग्रेटर दन इक्वल टू 60 तो यहां पर हम लिख सकते हैं कल डलॉग सीनियर एल्स कलॉग मिडल सो दिस इज अ वैलिड कोड जो रन कर सकता है अब इस कोड के अंदर मैंने क्या किया जब हमने अपनी इफ स्टेटमेंट लिखी है इफ स्टेटमेंट के अंदर भी हम इफ एल्स लिख सकते हैं यह क्या हो गई इसको हम नेस्टिंग कहते हैं नेस्टिंग यानी इफ के अंदर ही इफ एल्स को लिख पाना तो एक बार ये कंडीशन अगर ट्रू हो गई तो उसके बाद अंदर वाली कंडीशन चेक की जाएगी तो एज अगर 19 है तो यहां पे हमारे लिए मिडल प्रिंट होके आएगा जैसे ही रिफ्रेश करेंगे मिडल प्रिंट होके आएगा क्यों क्योंकि एजज पहले चेक हुई क्या एज ग्रेटर दन 18 है ग्रेटर दन 18 है उसके बाद चेक हुआ क्या ग्रेटर दन 60 है नहीं है तो यहां एल्स में आ गए और ये वाली चीज हमारे लिए प्रिंट हो कर आएगी दिस इज कॉल्ड नेस्टेड इफ एल्स जैसे हमारे पास नेस्टेड एल्स होता है वैसे ही हमारे पास नेस्टेड लूप्स भी होते हैं जैसे एक हमने लूप बनाया लेट i = 0 i ले 5 आ प् प्स इस तरीके से कुछ और फिर हमने लूप बनाया लेट i = 0 या दूसरा वेरिएबल बना लेते हैं j = 0 ज < 5 ज प् प् और यहां पर अगर मैं कंसोल डलॉग कर दूं j को तो इससे क्या होगा इससे मेरे पास 1 2 3 4 5 या 1 2 3 4 5 नहीं 0 1 2 3 4 ये पांच जो नंबर्स है ये हर लाइन पांच लाइनों के अंदर प्रिंट होके आएंगे सेव कर लेते हैं रिफ्रेश कर देते हैं दिस इज गोइंग टू बी द आउटपुट बट इसके अंदर सेम लाइन पर लाने के लिए व्ट आई कैन डू इ आई कैन प्रोबेबली क्रिएट अ स्ट्रिंग लेट एटीआर इ इक्वल टू दिस और एसआर इ एसआर प्स ज एंड यहां हमें बिल्कुल जानने की जरूरत नहीं है यह कोड जो मैं लिख रही हूं यह क्या करता है बस मैं एक कांसेप्ट आपको समझा रही हूं रिफ्रेश किया तो पांच बार क्या प्रिंट हुआ 0 1 2 3 4 इनफैक्ट यहां हम प्रिंट कर सकते हैं आ रिफ्रेश तो फर्स्ट फर्स्ट टाइम 01 2 3 4 प्रिंट हुआ फिर सेकंड टाइम प्रिंट हुआ फिर थर्ड टाइम प्रिंट हुआ फिर फोर्थ टाइम प्रिंट हुआ फिर फिफ्थ टाइम प्रिंट हुआ सो व्हाट इज दिस दिस इज अ नेस्टेड लूप यानी फॉर लूप के अंदर हमने एक दूसरा फॉर लूप लिख दिया क्यों लिखा ये कैसे प्रिंट हुआ उसके ज्यादा डिटेल में नहीं जाना बट ये किया जा सकता है प्रोग्रामिंग के अंदर तो नेस्टिंग का मतलब होता है एक चीज के अंदर दूसरी चीज को लिखना अब जैसे इफ के अंदर एक और इफ आ सकता है फॉर के अंदर एक और फॉर आ सकता है कॉल बैक्स की भी नेस्टिंग हो सकती है और यही जो कॉल बैक्स की नेस्टिंग होती है जब ये बहुत डीपर लेवल पे चली जाती है तो इससे कॉल हेल की प्रॉब्लम हमारे पास अराइज होती है अब ये कॉल बैक हेल की प्रॉब्लम कैसे अराइज होती है उसको हम धीरे-धीरे समझेंगे एक और छोटा सा डिस्क्लेमर मैं यहां पे आपको देना चाहूंगी कि जो कॉल बैक हेल है या आगे जाके हम प्रॉमिस के टॉपिक को पढ़ेंगे असं का वेट को पढ़ेंगे ये जो सारे के सारे कांसेप्ट हैं ये शायद ही कोई व्यक्ति होगा जिसको फर्स्ट टाइम में बहुत क्लेरिटी के साथ समझ में आ गए क्योंकि ये काफी डिफिकल्ट टॉपिक्स हैं प्रोग्रामिंग के अंदर तो इसीलिए अगर फर्स्ट टाइम में चीजें थोड़ी सी डिफिकल्ट लगती है तो उसे घबराना नहीं है अगर आपको परेशानी आ रही है कि एक बार हमने देख लिया पर हमें कंप्लीट समझ नहीं आया हमें कंफ्यूजन हो रहा है तो दैट इज कंप्लीट नॉर्मल इन टॉपिक्स को आपको एटलीस्ट दो से तीन बार देखना पड़ेगा टू अंडरस्टैंड देम और फिर जाके प्रैक्टिस करनी पड़ेगी अपने खुद के प्रोजेक्ट्स अपने खुद के कोड लिखने पड़ेंगे टू एक्चुअली अंडरस्टैंड कि मतलब क्या था उस चीज को ठीक है मैंने सीख तो लिया इसका क्या मतलब है पर वो प्रॉब्लम कौन सी प्रैक्टिकल सिचुएशन में अराइज करती है वो आपको एक्सपीरियंस के साथ आएगा उसमें आपको टाइम लगेगा तो घबराने की जरूरत नहीं है आज सिर्फ हम कांसेप्ट को सीखने पे ध्यान दे रहे हैं जरूरी नहीं है आप ये सोच पाओ कि यार प्रैक्टिकल सिनेरियो में ये प्रॉब्लम यहां पे अकर करेगी वो हमें आज समझ नहीं आएगा वो आपको एक्सपीरियंस के साथ समझ में आएगा तो दो से तीन बार भी अगर आपको टॉपिक को रिपीट कर कर के देखना पड़ता है तो उसमें टेंशन मत लेना दैट इज कंप्लीट नॉर्मल और इस टॉपिक को समझने के लिए आपको वो चीज करनी पड़ेगी तभी मैंने पहले ही बताया था ये चैप्टर अगर आपका कंप्लीट हो गया तो मतलब आप लोगों को जाकर कह सकते हैं अगर आपको अच्छे से टॉपिक समझ में आ गए कि मुझे जावास्क्रिप्ट के अंदर प्रोग्रामिंग ठीक से आती है अब लेट्स सपोज हमने ऐसी वेबसाइट बनाई है जो डेटाबेस से कुछ डेटा लेकर आती है डेटाबेस हमारा एक कलेक्शन होता है जिसके अंदर हमारा सारा डेटा स्टोर्ड होता है अब एज सच हम डेटा बेसेस नहीं पढ़ रहे पर हम इमेजिन कर सकते हैं एक वेबसाइट है जिसके पास मिलियंस ऑफ यूजर्स हैं और उन सारे यूजर्स का डेटा एक डेटाबेस के अंदर स्टोर्ड है तो वेबसाइट के अंदर मान लो कोई भी यूजर लॉग इन करता है तो जब भी यूजर अपना यूजर नेम और पासवर्ड एंटर करेगा हमारे कोड को जावास्क्रिप्ट के कोड को चेक करना पड़ेगा ये यूजर नेम पासवर्ड सही है क्या तो हम उस डेटाबेस के साथ मैच करेंगे क्या डेटाबेस के अंदर जो चीज स्टोर्ड है वो इस यूजर ने जो एंटर किया है उसके साथ मैच कर रही है मैच कर रही है तो आप अकाउंट के अंदर एंटर हो जाओगे तो जब भी हम डेटाबेस से कुछ भी डटा मंगवाते हैं उसमें हो सकता है कुछ टाइम लग जाए क्योंकि कुछ डेटा बेसेस फास्ट होते हैं कुछ डेटा बेसेस के अंदर हो सकता है हमें थोड़ा सा टाइम लग जाए तो ऐसे प्रैक्टिकल केसेस में जनरली अगर आपका लास्ट डेटाबेस होता है तो उसके अंदर आपको टाइम लगता है डेटाबेस डेटा फेश करने में तो ऐसा ही हम एक छोटा सा फंक्शन बना लेते हैं उस डेटाबेस की कॉपी बना लेते हैं एक तरीके से जो हमारे लिए डेटाबेस बनेगा तो इस फंक्शन को हम कह देते हैं गेट डेटा ये गेट डेटा फंक्शन क्या करता है हमें डेटा रिटर्न करता है दिस इज बेसिकली अ डेटाबेस और इस फंक्शन को हम बेसिकली एक डाटा का आईडी सेंड करेंगे कि मुझे इस आईडी वाला डाटा चाहिए और यह फंक्शन क्या करेगा यह फंक्शन हमें उस आईडी का डाटा रिटर्न करेगा तो ये बेसिकली या रिटर्न नहीं करेगा कसोल डलॉग करवा लेते हैं कि कसोल डलॉग करेगा डेटा टा विद द डाटा आईडी इस तरीके की कुछ चीज प्रिंट करवाएगा तो जब हम गेट डाटा को कॉल लगाएंगे तो इसका मतलब है कि हम डेटाबेस से ओके कि हम डेटाबेस से डेटा एक्सेस करने की कोशिश कर रहे हैं तो हमें एक आईडी भेजनी पड़ेगी 1 2 3 तो हमारे पास 12 23 आईडी वाला डटा आ गया अगर हमने वन भेजा तो हमारे पास वन आईडी वाला डाटा आ गया बहुत मतलब बेसिक लेवल पे कोर लेवल पे हम इस चीज को लिख रहे हैं तो हमने कोई आईडी भेजी उसके बेसिस पे हमारे पास डटा आ गया अब लेट्स सपोज ये डेटाबेस कुछ टाइम लेता है अभी तो इमीडिएट सेंड कर रहा है पर ये जो डेटाबेस है ये 2 सेकंड लेता है डेटा को सर्च करता है पहले कहां पे है डटा फिर दो सेकंड बाद डेटा को भेजेगा तो 2 सेकंड बाद डेटा को भेजता है तो उसके लिए हम सेट टाइम आउट को यूज़ कर सकते हैं कि लेट्स हैव सेट टाइम आउट इन इनसाइड दिस फंक्शन सेट टाइम आउट क्या करेगा इसके अंदर एक और हम एरो फंक्शन बना लेते हैं सेट टाइम आउट डाटा को तो प्रिंट करवा देगा मतलब भेज देगा पर कितने सेकंड बाद 2 सेकंड बाद तो इस तरीके से इसी कोड के अंदर इसी फंक्शन के अंदर वी हैव सेट टाइम आउट सेट टाइम आउट इस काम को करेगा पर 2 सेकंड बाद करेगा सेव कर लेते हैं रिफ्रेश करते हैं लेट्स सपोज हमें डाटा चाहिए हमें 456 आईडी वाला डाटा चाहिए तो वन टू 2 सेकंड बाद हमें वो डाटा मिल जाएगा अगर मुझे फोर आईडी वाला डाटा चाहिए तो वन टू 2 सेकंड बाद हमें हमारा डाटा मिल जाएगा तो अब ये फंक्शन क्या कर रहा है हमारा डेटाबेस क्या कर रहा है टाइम ले रहा है डेटा को रिटर्न करने में ये नॉर्मल सी चीज है जिसको हमने समझ लिया अब फॉर एग्जांपल हमें ऐसा कोड लिखना है जिसमें हमें पहले तो डाटा वन चाहिए उसके बाद डेटा वन एक बार हमारे पास आ गया फिर हमें डेटा टू चाहिए फिर डेटा टू हमारे पास आ गया उसके बाद हमें डटा थ्री चाहिए यानी ऐसा नहीं तीनों डटा साथ में चाहिए हमें ये डटा पहले चाहिए उसके बाद हमें ये डेटा चाहिए उसके बाद हमें ये डाटा चाहिए इस चीज को करने के लिए हम क्या कर सकते हैं हमारे दिमाग में आ सकता है कि पहले क्या कर देते हैं गेट डाटा वन कर देते हैं उसके बाद गेट डटा 2 कर देते हैं एंड उसके बाद हम गेट डाटा थ्री कर देते हैं तो इससे क्या होगा इस तरीके से हमने कोड लिखा तो क्या होगा पहले हमारे पास वन वाला डेटा आ जाएगा फिर हमारे पास टू वाला डेटा आ जाएगा फिर हमारे पास थ्री वाला डटा आ जाएगा तो इसे सेव कर लेते हैं एंड रिफ्रेश करते हैं तो वन टू अ इस सिचुएशन में क्या हुआ तीनों डाटा हमारे पास एक साथ आ गए हमें एक साथ डाटा नहीं चाहिए था हमें तो पहले वन वाला चाहिए था फिर हमें दो सेकंड का डिले चाहिए फिर ये वाला डाटा चाहिए फिर हमें 2 सेकंड का डिले चाहिए फिर हमें ये वाला डाटा चाहिए पर यहां पर एक्चुअली क्या हो रहा है जैसे ही ये कोड रन किया इसने क्या किया गेट डाटा ने क्या किया कि मैं सेट टाइम आउट मेरा टाइमर स्टार्ट कर देता हूं 2 सेकंड का और आगे का कोड रन करता हूं इसने भी क्या किया मैं अपना टाइमर स्टार्ट कर देता हूं दो सेकंड का और आगे का कोड रन करता हूं और इसने भी क्या किया मैं अपना टाइमर स्टार्ट करता हूं दो सेकंड का और आगे का कोड रन करता हूं और इन तीनों का टाइमर क्योंकि इमीडिएट स्टार्ट हुआ था इमीडिएट प्रोग्रामिंग चल रही है तो तीनों का टाइमर एक साथ कंप्लीट हुआ और तीनों का डेटा एक साथ हमारे पास आया पर ऐसी सिचुएशन कई बार हमारे पास हो सकती है कि फर्स्ट डाटा आए तभी हम सेकंड डटा सर्च करें सेकंड डेटा आए तभी हम थर्ड डटा सर्च करें फॉर एग्जांपल इसका मैं आपको एक सिनेरियो बताती हूं प्रैक्टिकल केस फॉर एग्जांपल हम अपने लॉग इन कर रहे हैं अब instagram2 सेकंड लग जाए एक सेकंड लग जाए वैसे तो रियल लाइफ सिनेरियो में काफी मिली सेकंड या और भी बहुत कम टाइम लगता है वो चीज सर्च करने में बट फॉर आवर सिंपलीसिटी जम करते उसमें दो सेकंड लग गए यूजर नेम को सर्च करने में अब यूजर नेम हो सकता है मिले ही नहीं डेटाबेस में तो हम पासवर्ड को क्यों चेक करें हम यूजर को बताएंगे सीधा आपका यूजर नेम गलत है इट डंट एक्जिस्ट इन आवर डेटाबेस लेकिन अगर यूजर नेम मिल गया फिर हम पासवर्ड को चेक करेंगे तो उसमें भी हो सकता है अगले दो सेकंड लगे तो इस तरीके की कंडीशन हम यहां पे रेप्ट करने की कोशिश कर रहे हैं जिसमें हमें डाटा जो सर्च करनी है चीज वो एक साथ नहीं चाहिए हमें तो इंडिविजुअल डिले के साथ चीजें चाहिए तो उसको करने का क्या तरीका होगा उसको करने का एक प्रैक्टिकल तरीका होता है कॉल बैक्स कॉल बैक्स से हम कैसे चीज को कर सकते हैं हमारे पास ये जो गेट डाटा वाला फंक्शन है इसे हम क्या करेंगे एक और फंक्शन इसके पास पास कर सकते हैं एक और कॉल बैक इस गेट डेटा को पास कर सकते हैं जिसको कह सकते हैं गेट नेक्स्ट डाटा गेट नेक्स्ट डेटा क्या करेगा एक बार ये डेटा हमने प्रिंट करवा लिया उसके बाद अगर इसके बाद भी कोई और डाटा चाहिए होगा तो उसको गेट करेगा तो गेट नेक्स्ट डाटा एक फंक्शन पास कर देंगे और एक बार हमें ये प्रिंट करवा लिया फिर हम गेट नेक्स्ट डाटा को कॉल करेंगे तो यहां पर जब हम गेट डाटा को पास कर रहे हैं तो गेट डाटा में वन तो क्या हो जाएगा हमारा रा डटा हो जाएगा और गेटन नेक्स्ट डेटा में दोबारा हम गेट डाटा को पास करेंगे और इसको किसके साथ पास करेंगे इसको पास करेंगे विद एन आईडी ऑफ टू अब यहां पर ध्यान से समझना है कि हम क्या करने की कोशिश कर रहे हैं हम गेट डाटा को तो कॉल कर रहे हैं और हमें ये वाला डाटा चाहिए कंप्लीट क्लियर है और हम चाहते हैं जैसे ही हमें ये वाला डेटा मिल जाए उसके बाद नेक्स्ट डेटा भी चाहिए हमें अब नेक्स्ट डेटा कहां से आए नेक्स्ट डेटा के लिए हमने उसी फंक्शन को एज अ कॉल बैक पास कर दिया अब इस तरीके से हम कॉल बैक पास नहीं कर सकते क्योंकि यहां तो क्या हो गया यहां तो फंक्शन के साथ पैरेंस लग गया तो वो इमीडिएट एग्जीक्यूट हो जाएगा यानी ऐसे कोड लिखेंगे तो हमारे पास एरर आ जाएगा इस तरीके से कि गेट नेक्स्ट डाटा इज़ नॉट अ फंक्शन क्यों क्यों एरर आया क्योंकि ये तो इमीडिएट एग्जीक्यूट हो गया और ये पहले एग्जीक्यूट हो गया इनफैक्ट इसीलिए टू वाली चीज पहले प्रिंट हो गई तो ऐसे नहीं लिखना अपने कॉल बैक को जब भी हमें साथ में कुछ आर्गुमेंट पास करना है तो अपने कॉलबैक को ऐसे लिखने की बजाय हम क्या करते हैं हम एक एरो फंक्शन बना देते हैं और इसको ऐसे लिख देते हैं ये जो एरो फंक्शन है ये एक प्रॉपर फंक्शन है जो इमीडिएट एग्जीक्यूट नहीं हो रहा एकदम से एग्जीक्यूट नहीं होगा तो ये क्या हो गया एक फंक्शन हो गया फंक्शन के अंदर दूसरा फंक्शन है तो दिस इज गोइंग टू बी आवर कॉल बैक इस तरीके का कोड देखने में आपको बहुत कॉम्प्लेक्शन आप रियल लाइफ कोड देखोगे कंपनीज के अंदर वेबसाइट्स के अंदर तो इसी तरीके से कोड लिखा होता है तो जो अजीब सा दिखने वाला कॉम्प्लेक्टेड है दिस इज रियल लाइफ प्रोग्रामिंग तो इस तरीके से हम अपने कॉल बैक को पास करेंगे अब इसको सेव कर लेते हैं एंड एक और चीज हमें ध्यान रखनी है क्योंकि गेट डाटा के अंदर फर्स्ट टाइम तो हमने कोई कॉल बैक पास कर दिया पर ये जो सेकंड टाइम हम गेट डाटा को कॉल कर रहे हैं इसमें तो गेट नेक्स्ट डाटा है ही नहीं तो यहां हम एक चेक लगा सकते हैं कि अगर गेट नेक्स्ट डाटा ये फंक्शन एजिस्ट करता हो तभी इस फंक्शन को कॉल करो यहां पर सेव कर लेते हैं अब इसे रिफ्रेश करेंगे तो वन टू 2 सेकंड बाद डेटा वन आएगा दोबारा से दो सेकंड का डिले होगा फिर हमारे पास डेटा टू आएगा यानी जो काम हम करना चाह रहे थे उसको हमने अचीव कर लिया कैसे अचीव किया कॉल बैक की फॉर्म में कि हमने यहां पे एक कॉल बैक पास कर दिया ये एज अ बिगनर आप सोचो कि अभी तक मैंने इतनी सारी जावास्क्रिप्ट के चैप्टर पढ़े थे ये चीज मेरे दिमाग में क्यों नहीं आई कि मैं इस तरीके से पास करूं नहीं आईग इस तरीके से कोड लिखना हर किसी को जावास्क्रिप्ट के अंदर सीखना पड़ता है हमें जानना पड़ता है कि कोड को ऐसे भी लिख सकते हैं एकदम से फॉर अ बिगनर आपको हिट नहीं करेगा तो उसमें टेंशन लेने की बात नहीं है कि इतना कॉम्प्लेक्शन करते हैं जावास्क्रिप्ट के साथ तो खुद से नहीं सोच सकते इस कोड को इस कोड के सिंटेक्स को ऐसे सिंटेक्स को हमें देख के सीखना पड़ता है फिर उसे अप्लाई करना पड़ता है फिर प्रैक्टिकल एक्सपीरियंस के साथ हम इसे खुद लिखना सीखते हैं तो ये हो गया हमारा एक ऐसा फंक्शन जिसमें हमने कॉलबैक को को पास किया और जो हमें काम करना था उसको अचीव किया अब लेट्स सपोज कि 2 सेकंड लगते हैं हमें डटा वन लाने में फिर 2 सेकंड लगते हैं हमें डटा टू लाने में अब दोबारा से 2 सेकंड के बाद हमें डटा थ्री चाहिए तो वो तो काम हमारे लिए बहुत आसान हो गया बेसिकली जो यहां पर हमने कॉल बैक पास किया ऐसे ही कॉलबैक हमें इस फंक्शन के अंदर पास करना है तो यहां पे क्या करेंगे एक एरो फंक्शन बना लेंगे और एरो फंक्शन के अंदर कर देंगे गेट डाटा ऑफ थ्री इसको कर लेते हैं सेव रिफ्रेश 2 सेकंड वेट करेंगे डेटा वन आ जाएगा 2 सेकंड वेट करेंगे डेटा टू आ जाएगा 2 सेकंड वेट करेंगे डेटा थ आ जाएगा बिल्कुल सही सेही चीजें चल रही है इनफैक्ट अब अगर आपको डेटा फोर भी चाहिए तो कुछ नहीं करना थ्री वाले में एक एरो फंक्शन बनाना है और इसके अंदर गेट डाटा करना है फोर बिल्कुल कोड हमारा वर्क करेगा रिफ्रेश करेंगे 2 सेकंड का डिले डाटा वन 2 सेकंड का डिले डेटा टू 2 सेकंड का डिले डटा थी एंड 2 सेकंड का डिले डेटा फर अब ये तो हमने जो सोचा था उसको अचीव कर लिया अच्छे से कैसे अचीव किया यूजिंग कॉल बैक्स बट अगर कोई एज अ बिगनर आप खुद इस कोड को देखो ये वाला जो पार्ट है व्हिच इज यूजिंग अ लॉट ऑफ़ कॉल बैक्स इफ यू लुक एट दिस पार्ट दिस इज वेरी कॉम्प्लेक्टेड मतलब ऐसा नहीं है आप एज अ बिगिन हैं आप फर्स्ट टाइम कॉल बैक को समझ रहे हैं हम फर्स्ट टाइम देख रहे हैं इस तरीके के सिंटेक्स को तो हमें तो कॉम्प्लेक्टेड सिंटेक्स नहीं है और यहां पर तो ये फिर भी इजी है क्यों क्योंकि मैंने छोटा सा ही तो फंक्शन लिखा है बट रियल लाइफ प्रोग्रामिंग के अंदर बहुत कॉम्प्लेक्शन होते हैं मतलब रियल लाइफ प्रोग्रामिंग के अंदर सिर्फ एक फंक्शन कॉल नहीं हो रहा होता रियल लाइफ प्रोग्रामिंग के अंदर क्या होता है अगर गेट डाटा है तो यहां पर पर बेसिकली हमारे लिए प्रिंट हो सकता है कसोल डलॉग गेटिंग डटा टू इस तरीके की बहुत सारी स्टेटमेंट्स हमारे पास हो सकती हैं अब जैसे ही मैंने सिर्फ क्या किया एक सिंपल सी स्टेटमेंट ऐड की है सिर्फ एक कसोल डलॉग की स्टेटमेंट ऐड किया है पर जैसे ही इसको सेव करके रन करेंगे वन टू डेटा वन आया अब वो डेटा टू को गेट कर रहा है डेटा टू आया अब वो डेटा थ्री को गेट कर रहा है डेटा थ आया वो डेटा फोर को गेट कर रहा है और फाइनली हमारे पास डेटा फोर आ गया मतलब काम वही सेम हो रहा है बस एक छोटी सी स्टेटमेंट एक्स्ट्रा ऐड कर दी तब ये कोड इतना अजीब एंड आई वुड से दिस इज अ वेरी बैड कोड मतलब क्योंकि अंडरस्टैंडेबल नहीं है जिस कोड को डेवलपर ही पढ़के समझ नहीं पा रहे दैट इज नॉट अ गुड वे ऑफ प्रोग्रामिंग और इसी प्रॉब्लम को हम कहते हैं यह जो कोड जिसको करने में हमें बहुत मेहनत लगी इसको हम कहते हैं कॉल बैक हेल्प क्यों क्योंकि एक कॉल बैक के अंदर हमने दूसरा कॉल बैक डाल दिया दूसरे कॉल बैक के अंदर तीसरा कॉल बैक डाल दिया तीसरे कॉल बैक के अंदर चौथा कॉल बैक डाल दिया दिस इज नेस्टेड कॉल बैक्स तो कोई आपसे पूछे कॉल बैक हेल क्या प्रॉब्लम होती है ये प्रॉब्लम होती है नेस्टेड कॉलबैक्स स्टैक्ड बिलो वन अनदर फॉर्मिंग अ पिरामिड स्ट्रक्चर ये क्या हो गया इन्होंने पिरामिड स्ट्रक्चर फॉर्म कर लिया पिरामिड यानी इस तरीके का स्ट्रक्चर जब फॉर्म करते हैं तो इसको हम पिरामिड ऑफ डूम भी कहते हैं बट जनरली आपको कॉल बैक हेल सुनने को मिलेगा तो दिस स्टाइल ऑफ प्रोग्रामिंग बिकम डिफिकल्ट टू अंडरस्टैंड एंड मैनेज कल को आपको इस कोड के अंदर कुछ चेंज करना होगा दैट विल बी डिफिकल्ट इसको समझना ही अपने आप में कोई डिफिकल्ट होगा और कंपनीज के अंदर तो नए प्रोग्रामर्स आते ही रहते हैं कोई नया व्यक्ति आपकी टीम के अंदर आया वो ऐसे कोड को देखेगा उसको प्रॉब्लम होगी इसको समझने और मैनेज करने में तो इसी लिए कॉल बैक हेल इज अ प्रॉब्लम इन जावास्क्रिप्ट जिसको सॉल्व करने के लिए हमारे पास एक चमत्कारी कांसेप्ट आता है जिसको हम कहते हैं प्रॉमिस वादा विश्वास तो प्रॉमिस का कांसेप्ट आता है कॉलबैक हेल वाली प्रॉब्लम को सॉल्व करने के लिए तो कॉल बैक्स हमारे पास होते हैं प्रोग्रामिंग के अंदर कॉल बैक को जब हम काफी ज्यादा नेस्टेड फॉर्म में यूज़ करते हैं डीपर नेस्टेड फॉर्म में यूज़ करते हैं उससे कॉल बैक हेल वाली प्रॉब्लम आती है और कॉल बैक हेल वाली प्रॉब्लम को सॉल्व करने के लिए हमारे पास प्रॉमिस आते हैं तो बेसिकली शुरुआत में जो हमने बात की थी हम समझेंगे कॉल बैक हेल क्या होता है कॉलबैक हेल हमने समझ लिया क्या होता है अब इसको सॉल्व करने के लिए हमारे पास प्रॉमिस आते हैं ऐसा नहीं है प्रॉमिस बहुत फुल प्रूफ चीज है प्रॉमिस के अंदर भी प्रॉब्लम्स आएंगी तभी हम बाद में एक और नई चीज लेकर आएंगे तो अब हम फाइनली समझने वाले हैं कि प्रॉमिस को कैसे यूज़ करते हैं अब यहां पे हमारे दिमाग में सवाल आ सकता है कि कॉलबैक हेल्स अगर बुरी चीज है तो क्या हमें कॉलबैक कभी भी नहीं यूज़ करने चाहिए बिल्कुल नहीं हमें कॉल बैक्स डेफिनेटली यूज़ करने चाहिए इनफैक्ट प्रोग्रामिंग के अंदर हम बहुत जगह कॉल बैक्स को यूज़ करते हैं बस जहां भी आपको दिखने लगे यहां कॉल बैक हेल हो रहा है उसको बेटर उसको इंप्रूव करने की कोश कोशिश करनी है तो अब हम सीखने वाले हैं कि कैसे कॉलबैक हेल को हम टैकल करते हैं यूजिंग प्रॉमिस तो अब स्टार्ट करते हैं प्रॉमिस के साथ अब जैसे रियल लाइफ के अंदर प्रॉमिस हमारे विश्वास के ऊपर चलते हैं फॉर एग्जांपल अगर हम amazononline.in और फिर जब भी ऑर्डर की डिलीवरी होने वाली थी वहां पर दो केसेस हो सकते हैं या तो ये हो सकता है कि हमारा ऑर्डर कैंसिल हो गया हमारे पैसे रिफंड हो गए या फिर हमारा ऑर्डर किस भी वजह से रीच नहीं कर पाया और amazonbusiness.in प्रॉमिस रिजॉल्व हो गया रिजॉल्व हो गया यानी चीज सक्सेसफुली काम कर गई और अगर हमारा आइटम हमारा ऑर्डर जो है कैंसिल हो गया उस केस में कहते हैं कि हमारा प्रॉमिस रिजेक्ट हो गया तो ये कुछ टर्म्स हैं अनफुलफिल्ड रिजेक्ट रिजॉल्व जिनको हम जावास्क्रिप्ट के प्रॉमिस में बहुत बार देखेंगे अब जैसे रियल लाइफ प्रॉमिस विश्वास के ऊपर चलते हैं वैसे ही जावास्क्रिप्ट के प्रॉमिस भी एक तरीके से विश्वास के ऊपर चलते हैं प्रॉमिस इन जावास्क्रिप्ट इज फॉर इवेंचर कंप्लीशन ऑफ टास्क यानी हमारे कोड ने हमें एक प्रॉमिस दे दिया इसका मतलब है कि इवेंचर हम करने की कोशिश कर रहे हैं वो क्या होगा वो या तो रिजॉल्व होगा या रिजेक्ट होगा मतलब वो काम इवेंचर है या उसके अंदर कोई एरर आ जाता है वो हमें नहीं पता पर इवेंचर हमारा कंप्लीट हो रहा होगा प्रॉमिस जावास्क्रिप्ट के अंदर एक ऑब्जेक्ट होती है एंड प्रॉमिस आर अ सॉल्यूशन टू कॉल बैक हेल कैसे ये कॉल बैक हेल के लिए सॉल्यूशन है उसको हम धीरे-धीरे समझेंगे पहले हम प्रॉमिस का बेसिक समझने वाले हैं किसी भी प्रॉमिस ऑब्जेक्ट को क्रिएट करने के लिए हम लिखते हैं न्यू प्रॉमिस तो प्रॉमिस ये वाला प्रॉमिस क्या है ये हमारी एक क्लास है जिससे हम एक नया प्रॉमिस क्रिएट कर रहे हैं और इसके अंदर प्रॉमिस को क्रिएट करने के लिए बेसिकली हम एक फंक्शन पास करते हैं और फंक्शन के अंदर हमारे पास दो हैंडलर्स होते हैं ये हैंडलर्स क्या है ये हैंडलर्स खुद में फंक्शंस है या इनको हम कॉल बैक्स कह सकते हैं एक का नाम होता है रिजॉल्व एक का नाम होता है रिजेक्ट बहुत बेसिक के साथ शुरुआत करते हैं हमारा ये वाला जो कोड है इसे अभी के लिए हम कर देते हैं कॉमेंट आउट एंड लेट्स लुक एट आवर प्रॉमिस अब जब भी हम प्रॉमिस की बात करते हैं लेट्स क्रिएट अ न्यू प्रॉमिस इसको हम कह देते हैं प्रॉमिस इज इक्वल टू न्यू प्रॉमिस प्रॉमिस जिसके अंदर हम इस तरीके से अपना कोई एरो फंक्शन लिख सकते हैं और यह जो हमारा एरो फंक्शन है इसके अंदर हमारे पास दो हैंडलर्स होते हैं रिजॉल्व एंड रिजेक्ट रिजॉल्व का मतलब है अगर इस फंक्शन को आपने रन कर दिया इसका मतलब आपका प्रॉमिस जो है कंप्लीट हो गया काम सक्सेसफुल हो गया और रिजेक्ट का मतलब है अगर इस फंक्शन को आपने रन कर दिया इसका मतलब आपका प्रॉमिस फुलफिल तो हो जाएगा मतलब काम तो हो जाएगा पर उस काम में एरर आ जाएगा अभी के लिए सिर्फ हम क्या लिखते हैं कलॉग आई एम अ प्रॉमिस इस तरीके का कुछ लिखते हैं लेट्स सेव इट एंड लेट्स एग्जीक्यूट इट तो हमारे पास प्रिंट होकर आ गया यहां पर आई एम अ प्रॉमिस एंड अगर हम प्रॉमिस की वैल्यू को प्रिंट करवाएं तो इस तरीके से हमारे पास जावास्क्रिप्ट के अंदर प्रॉमिस प्रिंट होक आते है कंसोल विंडो में यहां पर क्या लिखा आ रहा है प्रॉमिस लिखा आ रहा है और यहां पेंडिंग आ रहा है यानी प्रॉमिस के अंदर एक तो प्रोटोटाइप होता है क्योंकि एक ऑब्जेक्ट है हर ऑब्जेक्ट के पास प्रोटोटाइप होता है और दूसरा इसके पास दो चीजें होती है एक होता है स्टेट एक होता है रिजल्ट अब जब भी हमारा कोई भी प्रॉमिस होता है प्रॉमिस की तीन स्टेट्स हो सकती है एक स्टेट होती है हमारी पेंडिंग स्टेट एक स्टेट होती है हमारी फुलफिल्ड स्टेट और एक स्टेट होती है हमारी रिजेक्टेड स्टेट फुलफिल्ड कहने का मतलब होता है रिजॉल्वड इसको ऐसे समझते हैं फॉर एग्जांपल हमने amazononline.in ली हमारा ऑर्डर आ जाता है तो हमारा ऑर्डर क्या हो गया ऑर्डर फुलफिल हो गया यानी चीज रिजॉल्व हो गई या फिर अगर रि हमारा क्या होता है रिजॉल्व हमारा फंक्शन होता है इस फंक्शन को कौन क्रिएट कर रहा है इस फंक्शन को जावास्क्रिप्ट ही क्रिएट कर रहा है ये इंटरनली ऑटोमेटिक जावास्क्रिप्ट से क्रिएट होता है तो रिजॉल्व को हम कॉल करेंगे और इसे हम किसी वैल्यू के साथ कॉल कर सकते हैं लेट्स सपोज वी राइट 1 2 3 तो हमारे रिजल्ट में इफ वी नाउ प्रिंट द प्रॉमिस तो प्रॉमिस की स्टेट क्या है प्रॉमिस की स्टेट है फुलफिल्ड और रिजल्ट में क्या है रिजल्ट में है 1 2 3 हम चाहते तो यहां पर कोई मैसेज भी पास ऑन कर सकते थे फॉर एग्जांपल आई कुड हैव रिटन सक्सेस एंड अब हम अपने प्रॉमिस को प्रिंट करवाते तो हमारे पास स्टेट के अंदर आता फुलफिल्ड एंड हमारे पास पास रिजल्ट के अंदर आता सक्सेस जैसे प्रॉमिस रिजॉल्व होता है वैसे ही प्रॉमिस रिजेक्ट भी हो सकता है ये रिजेक्ट फंक्शन भी ऑटोमेटिक जावास्क्रिप्ट क्रिएट करता है रिजेक्ट के अंदर हम कोई एरर दे सकते हैं सम एरर इसको कर सकते हैं सेव एंड रिफ्रेश तो ऑटोमेटिक वो जो एरर हमने क्रिएट किया वो एक एरर की तरह हमारे पास जनरेट होके हमें दिखाई देगा यहां पे सम एरर की जगह लिख सकते हैं सम एरर अकड रिफ्रेश किया तो वही सेम मैसेज हमारे पास प्रिंट होके आता है और अगर हम अपने प्रॉमिस को देखें तो प्रॉमिस ऑब्जेक्ट के अंदर प्रोटोटाइप तो होता ही है हमारे पास पर उसके साथ में इस बार स्टेट में आया है रिजेक्टेड एंड रिजल्ट में हमारे पास आया है हमारा एरर तो इस तरीके से प्रॉमिस क्या है रीकैप कर लेते हैं प्रॉमिस हमारी एक ऑब्जेक्ट होती है जावास्क्रिप्ट के अंदर जिसकी तीन स्टेट्स होती हैं पेंडिंग रिजॉल्व रिजेक्टेड या पेंडिंग फुलफिल्ड रिजेक्टेड रिजॉल्व एंड रिजेक्ट इसके अंदर दो हमारे हैंडलर्स होते हैं और ये हैंडलर्स ऑटोमेटिक जावास्क्रिप्ट के साथ क्रिएट होते हैं और किसी भी प्रॉमिस के अंदर रिजॉल्व या रिजेक्ट करके हम उस प्रॉमिस को कंप्लीट कर सकते हैं और उसके अंदर या तो एरर जनरेट कर सकते हैं फाइनल रिजल्ट लेकर आ सकते हैं अब वैसे यहां तो हम प्रॉमिस ऑब्जेक्ट को खुद से क्रिएट कर रहे हैं पर जनरल प्रोग्रामिंग के अंदर हम प्रॉमिस ऑब्जेक्ट को क्रिएट नहीं करते अगर हम किसी एपीआई के पास रिक्वेस्ट भेजते हैं कि हमें कुछ डटा चाहिए तो वो हमें क्या भेजती है वो एपीआई हमें एक प्रॉमिस रिटर्न करती है और फिर हम प्रॉमिस से अपने डाटा के साथ डील करते हैं प्रॉमिस से अपना डटा निकालते हैं रिजल्ट निकालते हैं उसकी स्टेट चेक करते हैं बट क्योंकि यहां पर अभी हम एपीआई के साथ डील करना हमने स्टार्ट नहीं किया हम दूसरे किसी सिस्टम के साथ डील करना स्टार्ट नहीं किया तो अभी अपने प्रॉमिस को हम खुद क्रिएट कर रहे हैं पर जनरल प्रोग्रामिंग के अंदर दूसरी एपीआई दूसरे सिस्टम दूसरे लोग हमारे लिए प्रॉमिस को क्रिएट करते हैं और हम बस प्रॉमिस को हैंडल कर रहे होते हैं तो प्रॉमिस के अंदर जो हमारा रिजॉल्व एंड रिजेक्ट होता है दे आर कॉल बैक्स प्रोवाइडेड बाय जावास्क्रिप्ट इट सेल्फ अब जनरल प्रोग्रामिंग के अंदर प्रॉमिस कैसे यूज़ होते हैं फॉर एग्जांपल हमारे पास हमारे ये फंक्शन था जो गेट डाटा के लिए हम यूज़ कर रहे थे कि लेट्स सपोज हमारी ये कोई एपीआई है जो हमें डटा रिटर्न करती है अब एपीआई इस तरीके से डायरेक्टली हमें डेटा रिटर्न नहीं करती एपीआई क्या करेंगी हमें एक प्रॉमिस रिटर्न करेंगी न्यू प्रॉमिस वो हमें रिटर्न करती हैं और न्यू प्रॉमिस के अंदर क्या हो सकता है यह हमारा एक फंक्शन होगा एरो फंक्शन जिसके अंदर रिजॉल्व होगा एंड रिजेक्ट होगा तो इस तरीके से जनरली हमारा कोड का ये बहुत बेसिक एग्जांपल मैं आपको दे रही हूं पर जनरली इसी तरीके से लॉजिकली इसी तरीके से चीजें वर्क कर रही होती है कि हमारे पास एक प्रॉमिस रिटर्न होके आता है प्रॉमिस के अंदर रिजॉल्व एंड रिजेक्ट है एंड प्रॉमिस का ये जो फंक्शन है एरो फंक्शन इसके अंदर सारा काम हो रहा होता है तो इस तरीके से जब हम गेट डेटा को कॉल करेंगे तो हमें क्या मिलेगा गेट डाटा को कॉल करेंगे तो हमें एक प्रॉमिस रिटर्न होके मिलेगा यानी इफ आई रिफ्रेश एंड इफ आई डू गेट डाटा तो गेट डाटा क्या देगा एक प्रॉमिस देगा प्रॉमिस की स्टेट क्या है पेंडिंग है शुरुआत में जब तक रिजल्ट नहीं आया और जैसे ही रिजल्ट आ गया इस बार हम अगर गेट डाटा का रिजल्ट कहीं पर स्टोर करा ले जैसे इसे एक बार कमेंट आउट करते हैं सेव ये मेरा एक फंक्शन है जो मुझे प्रॉमिस रिटर्न कर रहा है जनरली एपीआई को जब हम कॉल करते हैं वो भी ऐसे ही प्रॉमिस रिटर्न करती है रिफ्रेश किया लेट रिजल्ट इज इक्वल टू या इनफैक्ट यहां पर जो वेटिंग टाइम है उसे हम 5 सेकंड कर लेते हैं सेव पा सेकंड करने के बाद यहां पर आ जाते हैं लेट रिजल्ट इज इक्वल टू हम करते हैं गेट डाटा हमें कौन सा डाटा चाहिए हमें टूथ आईडी वाला डाटा चाहिए अभी अगर हम अपने रिजल्ट को प्रिंट करवाए तो रिजल्ट क्या है रिजल्ट की स्टेट है हमारे पास पेंडिंग एंड रिजल्ट के अंदर यानी इस प्रॉमिस के अंदर हमारे पास कोई वैल्यू नहीं है और अभी भी अगर हम रिजल्ट को प्रिंट करवाए तो अभी भी इसकी स्टेट पेंडिंग है क्योंकि अपने प्रॉमिस को ना हमने रिजॉल्व किया ना हमने रिजेक्ट किया तो जनरली क्या होता है जब भी कोई ऐसे इस तरीके से एपीआई या कोई फंक्शन प्रॉमिस रिट कर रहा होता है तो अगर सक्सेसफुली हमारा डाटा हम रिटर्न कर देते हैं तो लास्ट में जाते-जाते हम क्या कर देते हैं अपने प्रॉमिस को हम रिजॉल्व कर देते हैं कैसे रिजॉल्व करेंगे इसको कह देते हैं सक्सेस इसको हमने कह दिया सक्सेस कि हमारा प्रॉमिस रिजॉल्व हो जाए जैसे ही हम डाटा को प्रिंट करवा दें वैसे ही प्रॉमिस रिजॉल्व हो जाएगा तो अब अगर हम चेक करें यहां इसको रिजल्ट की जगह कह लेते हैं फाइनल वैल्यू ताकि हम कंफ्यूज ना हो प्रॉमिस के रिजल्ट एंड इस फाइनल वैल्यू से तो हम गेट डाटा को कॉल लगाएंगे उससे हम 12 23 आईडी वाला डाटा मांग रहे हैं तो गेट डाटा क्या करेगा 12 23 आईडी वाला डेटा तो हमें दे देगा पर अभी उसने डेटा नहीं दिया डेटा तो वो कब देगा डेटा तो यह पा सेकंड बाद देगा हमें तो ये इमीडिएट प्रॉमिस दे देगा कि मैं आपको वादा कर रहा हूं 5 सेकंड बाद आपको डेटा दे दूंगा और फिर हम 5 सेकंड के लिए वेट करेंगे फिर फाइनली हम देखेंगे हमारा प्रॉमिस पूरा हुआ या नहीं हुआ क्या गेट डाटा ने हमें डाटा दिया या नहीं दिया तो यह क्या करेगा हमें एक फाइनल वैल्यू दे रहा है या इसको कह सकते हैं हमें एक प्रॉमिस दे रहा है गेट डाटा और जैसे ही हम एंटर करेंगे और अपने प्रॉमिस को प्रिंट करवाएंगे प्रॉमिस क्या है अभी पेंडिंग है प्रॉमिस और रिजल्ट उसका अनडिफाइंड है पर जैसे ही डेटा प्रिंट हो गया और अब मैं अपने प्रॉमिस को प्रिंट करवाऊं तो नाउ माय प्रॉमिस हैज बिकम फुलफिल्ड और उसके अंदर रिजल्ट में आ रहा है सक्सेस तो इस तरीके से प्रॉमिस काम करते हैं ये फर्स्ट टाइम अगर हम देख रहे हैं तो कांसेप्ट हमें नहीं समझ में आएगा प्रॉब्लम आएगी बट फॉर आवर सिंपलीसिटी मैं रीकैप करा देती हूं बिकॉज़ दिस इज रियली इंपोर्टेंट टू अंडरस्टैंड एग्जांपल हमने लिया एक डेटा एपीआई का कि ये गेट डटा हमें कुछ डेटा रिटर्न करती है पर ये डेटा डायरेक्टली रिटर्न नहीं करती ये अपना कुछ टाइम ले रही है डेटा रिटर्न करने में पर ये क्या कर रही है इमीडिएट डायरेक्टली हमें प्रॉमिस रिटर्न कर रही है कि मैं वादा कर रहा हूं 5 सेकंड बाद तुम्हें डेटा रिटर्न कर दूंगा तो हम क्या करेंगे हम इसका वादा ही रख लेते हैं हम इसका प्रॉमिस ही सेव करा लेते हैं शुरुआत में जब तक हमें डटा नहीं मिल रहा तब तक प्रॉमिस क्या है तब तक प्रॉमिस पेंडिंग है यानी जब तक ये सेट टाइम आउट एग्जीक्यूट नहीं होता तब तक प्रॉमिस पेंडिंग है और जैसे ही इसने प्रिंट करवा दिया वैसे ही हम क्या कर रहे हैं रिजॉल्व कर रहे हैं विद अ सक्सेस मैसेज तो जैसे ही हमारे पास डाटा प्रिंट होकर आ गया इस बार अपने उसी सेम वेरिएबल प्रॉमिस की मैं वैल्यू प्रिंट करवाऊं तो उसके अंदर स्टेट चेंज हो गई है टू फुलफिल्ड एंड रिजल्ट हमारे पास आ रहा है टू सक्सेस तो इस तरीके से हमारे प्रॉमिस यूज होते हैं अब यहां पर तो इस प्रॉमिस को हमने खुद क्रिएट किया पर जनरल प्रोग्रामिंग के अंदर दोबारा मैं रिपीट करके बता रही हूं हम जनरली खुद नहीं क्रिएट करते हैं हमें प्रॉमिस रिटर्न होके मिलता है जैसे यहां पे मुझे प्रॉमिस क्या मिला रिटर्न होके मिला फिर इस प्रॉमिस के साथ हम कुछ कुछ कुछ कुछ ऑपरेशंस को परफॉर्म कर सकते हैं तो हमारा जो जावास्क्रिप्ट का प्रॉमिस ऑब्जेक्ट होता है प्रॉमिस ऑब्जेक्ट कैन बी पेंडिंग पेंडिंग का मतलब है रिजल्ट अनडिफाइंड है या हमारा प्रॉमिस रिजॉल्व हो सकता है मतलब फुलफिल्ड हो सकता है इसका मतलब रिजल्ट के अंदर कुछ वैल्यू आ गई है या फिर हमारा प्रॉमिस रिजेक्ट हो सकता है मतलब रिजल्ट के अंदर एक एरर ऑब्जेक्ट हमारे पास आती है तो रिजॉल्व करने के लिए हम कुछ रिजल्ट लिख देते हैं उसके साथ उसे रिजॉल्व करते हैं रिजेक्ट करने के लिए हम कुछ एरर भेज देते हैं उस एरर के साथ उसे रिजेक्ट कर देते हैं जैसे अगर यहां पर कुछ एरर आ जाता फॉर एग्जांपल हम डाटा सेंड नहीं कर पाते तो उस केस में क्या करते हम अपने प्रॉमिस को ये एपीआई क्या करती रिजेक्ट करती एरर के साथ रिजेक्ट कर रही होती इसे सेव कर लेते हैं रिफ्रेश करते हैं अब यहां पर हमें वादा मिल गया हमें प्रॉमिस मिल गया कि हमारे पास हमारा डाटा आएगा पर जैसे ही डेटा देने का टाइम आया 5 सेकंड बाद तो उस टाइम पे क्या हुआ एरर आ गया और एरर आ गया तो अब हम चेक करेंगे कि प्रॉमिस का क्या हुआ कुछ नहीं हुआ प्रॉमिस का प्रॉमिस रिजेक्ट हो गया क्योंकि हमारे पास एरर आ गया अब ये तो हमने सीख लिया कि प्रॉमिस का बेसिक कैसे काम करता है पर प्रॉमिस को हम यूज कैसे करते हैं ये तो प्रॉमिस को क्रिएट करना हो गया उनको रिजॉल्व या रिजेक्ट करना हो गया पर हमें तो नहीं करना रिजॉल्व और रिजेक्ट वो तो कोई और करेगा हमारे लिए हमें एक बार प्रॉमिस मिल गया तो उस प्रॉमिस को हम यूज कैसे करेंगे वो हमारे लिए सबसे इंपॉर्टेंट है तो प्रॉमिस को यूज करने के लिए हमारे पास दो फंक्शन होता है कि जब भी हमारे पास कोई कोई प्रॉमिस आता है अगर वो प्रॉमिस फुलफिल हो जाए या वो प्रॉमिस रिजेक्ट हो जाए पेंडिंग प्रॉमिस का तो हम कुछ कर नहीं सकते एक बार ऑनलाइन ऑर्डर हमने कर दिया जब तक ऑर्डर कैंसिल नहीं होता या ऑर्डर डिलीवर नहीं होता तब तक हम कुछ नहीं कर सकते हम सिर्फ वेट कर सकते हैं पर जनरली हमें प्रोग्रामिंग के अंदर कैसे काम करना होता है मान लेते हैं हमने एपीआई से डेटा एक्सेस करने की कोशिश की अब हम उस डेटा का वेट ही कर सकते हैं या तो वो डेटा फाइनली हमारे पास आ जाएगा या फिर हमें पता चल जाएगा हमारे पास डाटा नहीं आने वाला तो अगर प्रॉमिस फुलफिल्ड हो जाएगा तो उस केस में हमें हो स सता है कुछ सक्सेस का मैसेज दिखाना हो कुछ काम करना हो या प्रॉमिस रिजेक्ट होगा तब हो सकता है हमें कुछ काम करना हो रिजेक्ट होने पर हो सकता है हम एक और रिक्वेस्ट भेजे दोबारा डाटा मांगे कुछ भी काम हो सकता है तो जनरली हमारे पास अगर हम प्रॉमिस के फुलफिल होने का या रिजेक्ट होने का वेट करते हैं तो फिर फुलफिल होने के बाद हमें कुछ काम कराने होते हैं रिजेक्ट होने के बाद हमें कुछ काम कराने होते हैं फुलफिल होने के बाद अगर हमें कुछ काम कराना है तो उसके लिए हमारा जो प्रॉमिस है उसके साथ हम डॉट देन मेथड का यूज करते हैं और रिजेक्ट होने के बाद यानी कुछ एरर आने के बाद कुछ काम कराना होता है तो उसके लिए हम डॉट कैच को यूज करते हैं तो डॉट देन को हम जनरली कैट से बहुत ज्यादा यूज कर रहे होते हैं तो हमारे पास अगर कोई पेंडिंग प्रॉमिस है उस पर अगर हमने डॉट देन लगा दिया और उसके अंदर हमने कोई फंक्शन पास कर दिया तो ये फंक्शन तभी एग्जीक्यूट होगा जब हमारा प्रॉमिस फुलफिल होता है फॉर एग्जांपल ये वाला जो कोड है इसे वापस से इस स्टेट में ले आते हैं नॉर्मल स्टेट में एंड इसे अभी के लिए कॉमेंट आउट कर देते हैं हम अपने सिंपल से प्रॉमिस के ऊपर ध्यान देते हैं यहां क्या हो रहा है यह हमारा फंक्शन है ये हमारा न्यू प्रॉमिस है या यहां पर एक फंक्शन बना लेते हैं लेट्स कॉल इट कंस्ट गेट प्रॉमिस गेट प्रॉमिस क्या करता है गेट प्रॉमिस एक नया प्रॉमिस भेजता है और नए प्रॉमिस को लेट्स सपोज शुरुआत में वो रिजॉल्व करके भेज रहा है यानी टूथ मैसेज के साथ या किसी भी मैसेज के साथ सक्सेस मैसेज के साथ कह लेते हैं वो हमें प्रॉमिस को रिटर्न कर रहा है तो हम क्या कर सकते हैं लेट प्रॉमिस इज इक्वल टू गेट प्रॉमिस हम गेट प्रॉमिस को कॉल लगा सकते हैं तो गेट प्रॉमिस क्या करेगा हमें कोई प्रॉमिस रिटर्न करेगा अब यह जो प्रॉमिस है यह प्रॉमिस अगर रिजॉल्व होता है तो हम इस डॉट देन को यूज़ कर सकते हैं कि प्रॉमिस अगर रिजॉल्व हो जाए एक बार तो हम क्या काम करवाना चाहते हैं उस काम को हम अपने इस एरो फंक्शन के अंदर या इस फंक्शन के अंदर लिख सकते हैं वो काम कुछ भी हो सकता है वो काम हो सकता है कंसोल डलॉग प्रॉमिस फुलफिल्ड सिर्फ इतनी चीज हमें प्रिंट करवानी है तो ये एक फंक्शन है नॉर्मल सा फंक्शन है जो एक प्रॉमिस रिटर्न कर रहा है और यहां हम उस फंक्शन को कॉल कर रहे हैं हमारे पास प्रॉमिस आ गया जैसे ही प्रॉमिस रिजॉल्व हो वैसे क्या हो जाए ये मैसेज हमारे पास प्रिंट ऊर आ जाए इसे रिफ्रेश करते हैं प्रॉमिस क्या हुआ ओके आई कैन नॉट रीड प्रॉपर्टीज ऑफ अनडिफाइंड ओके यहां हमें रिटर्न करना पड़ेगा तो हमने रिटर्न स्टेटमेंट को मिस कर दिया रिटर्न कर रहे हैं हम यहां से न्यू प्रॉमिस तो यहां प्रिंट होकर आ गया आई एम अ प्रॉमिस एंड उसके बाद प्रिंट होकर आ गया प्रॉमिस फुलफिल्ड पर अगर इस प्रॉमिस को रिजेक्ट कर देते यहां पे कमेंट आउट करके अगर हम इसे रिजेक्ट कर दें विद सम एरर तो उस केस में क्या होगा उस केस में ये चीज कभी प्रिंट नहीं होगी रिफ्रेश किया प्रॉमिस हमारा रिजेक्ट हो गया विथ सम एरर एंड वी नेवर प्रिंट दिस थिंग एरर को कैच करने के लिए हमें लिखना पड़ता है prom.com हमारे पास एक पैरामीटर आता है जिसको हम यहां पर रिजल्ट कह सकते हैं कैच के अंदर हम उसे एरर कह सकते हैं और हम चाहे तो अपने रिजल्ट एंड अपने एरर्स को प्रिंट भी करवा सकते हैं एरर में क्या आएगा एरर में वो एरर आएगा जो रिजेक्ट के टाइम पर हमने पास किया है सेव रिफ्रेश तो यहां क्या आया एरर आ गया इसको हम लेट्स कॉल इट नेटवर्क एरर भी बोल सकते हैं लेट्स सपोज हमने नेटवर्क एरर पास किया सेव किया रिफ्रेश किया तो रिजेक्टेड प्रिंट होके आ गया और फिर नेटवर्क एरर यानी ये एरर वो मैसेज है जिसको हमने रिजेक्ट करते टाइम पास किया था और अगर रिजल्ट की बात करें तो रिजल्ट वो मैसेज है जिसको हमने यहां पर रिजॉल्व करते टाइम पास किया था सेव किया रिफ्रेश किया इस बार हमारे पास आ गया फुलफिल्ड और उसके बाद सक्सेस सक्सेस क्या है सक्सेस वो रिजल्ट है जिसको हमने रिजॉल्व करते टाइम पास किया था तो हमारे पास दो फंक्शंस होते हैं देन एंड कैच जिसके अंदर हम अपना प्रॉपर एक फंक्शन पास कर सकते हैं जो तभी एग्जीक्यूट होगा जब हमारा प्रॉमिस या तो फुलफिल होगा या फिर रिजेक्ट होगा और इनके अंदर दो पैरामीटर्स होते हैं एक के अंदर रिजल्ट होता है एक के अंदर एरर होता है जिससे हम रिजॉल्व या रिजेक्ट वाली प्रॉपर वैल्यू को एक्सेस कर सकते हैं अब बात करते हैं कि प्रॉमिस चेनिंग एगजैक्टली क्या होती है ये तो हो गए हमारे प्रॉमिस यानी बेसिक्स ऑफ प्रॉमिस यही है कि प्रॉमिस एक ऑब्जेक्ट होती है उसके अंदर कुछ स्टेट्स होती हैं स्टेट्स को किस तरीके से हम यूज़ कर सकते हैं प्रॉमिस को किस तरीके से यूज़ कर सकते हैं देन और कैच क्या होते हैं यह हो गए प्रॉमिस के बेसिक्स पर प्रॉमिस को सिर्फ बेसिक्स पढ़ने के लिए तो हम पढ़ नहीं रहे थे प्रॉमिस को इसलिए हम पढ़ रहे थे ताकि हम प्रॉमिस चेन नाम के इस इंपॉर्टेंट कांसेप्ट को पढ़ सकें अब ये प्रॉमिस चेन क्या होती है प्रॉमिस चेन को हम ऐसे समझ सकते हैं ये सारी चीजें हम डिलीट कर लेते हैं फॉर एग्जांपल हमारे पास कोई एसिंक्रोनस फंक्शन है लेट्स मेक अ फंक्शन इसको हम कहते हैं सम एसिंक फंक्शन एसिक फंक्शन इसको कह देते हैं यह जो हमारा एसिंक्रोनस फंक्शन है यह हमें कुछ डटा रिटर्न करेगा या डेटा की जगह य हमें प्रॉमिस रिटर्न करेगा तो इसको कह देते हैं रिटर्न न्यू प्रॉमिस य हमें प्रॉमिस रिटर्न करेगा अब प्रॉमिस के अंदर रिटर्न करने के लिए हमें एक फंक्शन पास करना होता है एंड यहां पर रिजॉल्व एंड रिजेक्ट हमारे पास होंगे अब प्रॉमिस जब भी रिटर्न हो रहा है उसके अंदर कुछ काम होगा और क्योंकि एक एसिंक्रोनस फंक्शन है हम क्या करते हैं यहां पर एक सेट टाइम आउट चला देते हैं लेट्स सेट सम टाइम आउट और और टाइम आउट के अंदर भी हम अपना एक एरो फंक्शन पास कर सकते हैं एंड वी कैन पास सम टाइम कि लेट्स सपोज ये जो हमारा एसिंग फंक्शन है ये 3 सेकंड बाद मुझे कुछ डटा रिटर्न करता है या दो सेकंड बाद मुझे कुछ डाटा रिटर्न करता है ये क्या डाटा रिटर्न करता है रिटर्न करने की जगह प्रिंट करा लेते हैं ये मुझे कुछ सम डेटा वन कुछ डेटा वन मुझे रिटर्न करके देता है तो आई होप इतना फंक्शन हमें समझ में आया होगा ये एक एसिंक्रोनस फंक्शन है एसिंक्रोनस क्यों है क्योंकि टाइम आउट हम यूज कर रहे हैं जब भी टाइम आउट होता है एसिंक्रोनस हो जाता है ये मुझे एक नया प्रॉमिस रिटर्न कर रहा है जो या तो रिजॉल्व होगा या रिजेक्ट होगा जसे कह देते हैं तीन सेकंड बाद लेटस या चार सेकंड बाद कह देते हैं प्रॉमिस हमारा या तो रिजॉल्व होगा या रिजेक्ट होगा यह कुछ डटा हमें रिटर्न कर रहा है और डेटा रिटर्न करने के बाद अपने प्रॉमिस को रिजॉल्व कर लेता है किसके साथ रिजॉल्व कर लेता है सम मैसेज सक्सेस सक्सेस का एक मैसेज देता है कि प्रॉमिस हमारा रिजॉल्व हो गया अब इस एसिंक्रोनस फंक्शन को हम कॉल लगाएंगे तो और कॉल जब लगाएंगे तो यह हमें कोई प्रॉमिस रिटर्न करेगा एसिंक फंक्शन को कॉल लगाते हैं एंड कॉल लगाकर य हमें कुछ प्रॉमिस वन रिटर्न करेगा अब जैसे य प्रॉमिस वन रिजॉल्व होता है हम इसके रिजल्ट को प्रिंट करवाना चाहते हैं तो हम पव डॉट देन कर सकते हैं यह हमें कुछ रिजल्ट रिटर्न करेगा और हम कंसोल डॉट लॉग करके प्रिंट करवाएंगे इस रिजल्ट को यहां पर हम लिख सकते हैं कंसोल डलॉग फेचिंग फेचिंग फेचिंग मतलब गेटिंग डटा वन इसको सेव कर लेते हैं एंड रिफ्रेश करते हैं तो अभी क्या कर रहा है फेच कर रहा है डेटा वन 4 सेकंड वेट करेंगे और फिर हमारे पास डेटा वन प्रिंट होकर आ जाएगा किसने प्रिंट करवाया सेट टाइम आउट ने प्रिंट करवाया और जैसे ही इसने प्रिंट करवा दिया प्रॉमिस हमारा रिजॉल्व हो गया और जैसे प्रॉमिस रिजॉल्व हो गया डॉट देन एग्जीक्यूट हो गया और जैसे ही डॉट देन एग्जीक्यूट हो गया रिजल्ट हमारे पास प्रिंट आ गया एंड द रिजल्ट वाज सक्सेस तो इस तरीके से नॉर्मल फ्लो में हमारी चीजें चल रही है तो यहां फेचिंग डेटा वन लिख देते हैं और यहां हम सिर्फ डेटा वन को प्रिंट करवा लेते हैं तो दि इज हाउ प्रॉमिस आर वर्किंग ये वाला जो काम होता है जनरली एपीआई कर रही होती है हमें तो इस तरीके से प्रॉमिस मिलता है और प्रॉमिस के ऊपर हम डॉट देन लगा देते हैं अब लेट्स सपोज एक मेरी एपीआई है इसको एसिंग फंक्शन वन कह देते हैं ये मुझे डटा वन रिटर्न करती है ऐसे ही मेरे पास एक और दूसरी एपीआई है जो मुझे डटा टू रिटर्न करती है यहां कह देते हैं डटा टू और ये मुझे डटा टू कब रिटर्न करती है 6 सेकंड के बाद डेटा टू रिटर्न करती है और जब ये डेटा टू रिटर्न कर रही है तो इसके लिए भी हम प्रॉमिस क्रिएट कर लेते हैं या इनफैक्ट ये एपीआई भी मुझे चार सेकंड बाद डाटा रिटर्न करती है अब मुझे क्या चाहिए मुझे फ्लो में ये चाहिए कि पहले मेरे पास डटा वन आ जाए फिर मेरे पास डटा टू आ जाए तो अभी हम क्या करेंगे अभी हम सिर्फ इतना लिखेंगे फेचिंग डाटा वन एंड उसके बाद यहां पर हम लिखते हैं फेचिंग डाटा टू तो यहां हम ए फंक्शन टू को कॉल लगाएंगे लेट्स कॉल इट एसिंग फंक्शन टू जो डाटा टू को रिटर्न कर रहा है एंड इस तरीके से इसके ऊपर भी डॉट देन लगा देंगे अब कायदे से हम क्या सोच सकते हैं कायदे से हम ये सोच सकते हैं कि यहां हम डटा वन को फेच करेंगे हमें प्रॉमिस रिटर्न हो जाएगा प्रॉमिस रिटर्न होगा जैसे ही वो रिजॉल्व होगा हम रिजल्ट को प्रिंट करवा देंगे फिर हम डटा टू को फेच करेंगे फिर हमारे पास प्रॉमिस टू आएगा फिर प्रॉमिस टू आएगा तो हम रिजल्ट को फेच करा देंगे बट एक्चुअली क्या होता है एक्चुअली ये होता है कि प्रॉमिस तो हमारे पास आ गया अब ये वाला काम तो पैरेलली चलता रहेगा वी डोंट हैव टू वेट फॉर द प्रॉमिस टू गेट रिजॉल्वड हम तो आगे का काम करेंगे तो जैसे ही ये वाला फर्स्ट प्रॉमिस आएगा वैसे ही इमीडिएट हम यहां आ जाएंगे और यहां भी दोनों काम पैरेलली होंगे और इस तरीके से अगर हम कोड को लिखते हैं ना तो दोनों के दोनों जो डेटा वन एंड टाटू है वो हमारे पास एक साथ प्रिंट होके आएंगे रिफ्रेश करते हैं ए सिंग फंक्शन इज नॉट डिफाइंड फंक्शन ओके इसको एसिंग फंक्शन वन कह देते हैं सेव रिफ्रेश डेटा वन डेटा टू साथ में फेच हो रहे एंड दोनों साथ में ही आएंगे क्योंकि दोनों 4 सेकंड बाद आने वाले हैं पर हमें ऐसे नहीं चाहिए हमें चाहिए कि पहले डटा वन फेच हो उसके बाद ही डेटा टू फेच हो तो उसके लिए हम क्या कर सकते हैं उसके लिए हम चेनिंग कर सकते हैं चेनिंग यानी एक देन के अंदर दूसरा देन यूज कर सकते हैं कैसे हम चाहते हैं पहला प्रॉमिस रिजॉल्व हो तभी दूसरे डाटा के लिए सर्च किया जाए यानी instagram2 को फेच करेंगे डटा टू को उसके बाद फेच करना स्टार्ट करेंगे और फिर हम क्या करेंगे दोबारा से एक और नया प्रॉमिस लेंगे लेट p2 इ इक्व टू ए सिंक फंक्शन टू एंड p2 पर भी डॉट देन लगा देंगे और p2 पर डॉट देन लगाकर जो भी उसका रिजल्ट है जैसे ही ये रिजॉल्व हो जाएगा वैसे ही कसोल डलॉग कर देंगे रिजल्ट इसको कर लेते हैं सेव एंड इन फैक्ट हम चाहे तो रिजल्ट हटा भी सकते हैं वी डोंट रियली नीड टू प्रिंट द रिजल्ट हमें तो बस डाटा को फेच करने से खास मतलब है तो अब हम यहां पर क्या कर रहे हैं ये हमारा एसिंक्रोनस फंक्शन है वन ये हमारा एसिंक्रोनस फंक्शन है टू ये भी चा सेकंड लेता है डाटा देने में ये भी 4 सेकंड लेता है डटा देने में पहले फर्स्ट डेटा चाहिए फिर हमें सेकंड डेटा चाहिए तो पहले फर्स्ट डेटा कर रहे हैं तो उसके लिए हमने एसिंग फंक्शन वन को कॉल लगाई हमें प्रॉमिस रिटर्न हुआ प्रॉमिस अभी अनफुलफिल्ड है प्रॉमिस अभी पेंडिंग है तो हम जैसे ही प्रॉमिस रिजॉल्व होगा तभी डटा टू वाली कॉल लगाएंगे तो इसको सेव कर लेते हैं रिफ्रेश करते हैं अभी फैच हो रहा है डेटा वन जैसे ही डटा वन फैच होकर प्रिंट होगा 4 सेकंड बाद अब डेटा टू फैच हो रहा है जैसे ही फैच हो जाएगा 4 सेकंड बाद डेटा टू हमारे पास प्रिंट होकर आ जाएगा तो जो काम पहले हम अपने कॉल बैक से कर रहे थे वही सेम काम हम प्रॉमिस से भी कर सकते हैं सेम ही काम काम हम करने की कोशिश कर रहे हैं पर प्रॉमिस वाला सिंटेक्स थोड़ा सा इजियर लगता है अभी आपको इतना इजी नहीं लग रहा होगा देखकर बट व्हाट आई कैन डू इज इसको थोड़ा सा हम सिंपलीफाई कर सकते हैं कैसे कर सकते हैं हम डायरेक्टली अपने एसिंक फंक्शन हमें p1 बनाने की जरूरत यहां पर नहीं है हम डायरेक्टली एसिंक फंक्शन को कॉल लगाएंगे और हमें पता है ये हमें प्रॉमिस रिटर्न करेगा तो हमारे ये जो डॉट देन है हम डायरेक्टली इस पर क्रिएट कर सकते हैं डॉट देन इस पर क्रिएट कर दिया एंड उसके बाद ए सिं फंक्शन टू पर डायरेक्टली हम इस तरीके से अपना डॉट देन लगा सकते हैं तो इस तरीके का कोड हम कुछ लिख सकते हैं कि पहले हम डटा वन को फेच कर रहे हैं डटा वन को हमने फेच किया इसने प्रॉमिस रिटर्न किया फिर अगर जैसे ही वो रिजॉल्व होता है फिर हम डटा टू को फेच कर रहे हैं फिर वो हमें क्या करेगा डटा टू रिटर्न करके देगा इसको सेव करके रिफ्रेश करें तो सेम आउटपुट आएगा पहले डटा वन फेच हो रहा है फिर वो हमारे पास प्रिंट होगा फिर डटा टू फेच हो रहा है फिर डटा टू 4 सेकंड बाद हमारे पास प्रिंट होकर आएगा तो इस तरीके से हमारी प्रॉमिस चेनिंग काम करती है चेनिंग का मतलब एक देन के साथ मैंने दूसरा देन चेन करके लिख दिया अब ये तो हो गया हमरा हमारे एग्जांपल के साथ हम अगर अपने पुराने गेट डाटा वाले एग्जांपल पर आ जाए तो यहां पर भी हम अपनी प्रॉमिस चेनिंग कर सकते हैं ये तो हो गया कॉल बैक हेल अब इसी सेम काम को प्रॉमिस चेनिंग से कैसे करेंगे इनफैक्ट इसे तो कमेंट आउट ही कर लेते हैं इसी सेम काम को हम प्रॉमिस चेन से करने वाले हैं कैसे करेंगे सबसे पहले तो गेट डाटा को कॉल करते हैं यहां से प्रॉमिस वन लेते हैं हम गेट डाटा को कॉल करेंगे और गेट डेटा से लेट्स सपोज मुझे डटा वन चाहिए डटा वन मुझे चाहिए और जैसे ही मेरा प्रॉमिस रिजॉल्व होगा मुझे क्या करवाना है मेरे पास कुछ रिजल्ट आ जाएगा एंड आई बेसिकली वांट टू प्रिंट माय रिजल्ट इतना काम है गेट डाटा मुझे पता ही है मुझसे कुछ डाटा का आईडी लेता है आईडी में मैंने वन पास किया है अभ गेट नेक्स्ट डाटा हम नहीं कर रहे पर हम न्यू प्रॉमिस रिटर्न कर रहे हैं और फिर सेट टाइम आउट एंड देन फाइनली जैसे ही डाटा हमारे पास प्रिंट हो जाएगा वैसे ही ये रिजॉल्व हो जाएगा इसको सेव कर लेते हैं रिफ्रेश करते हैं फाइव सेकंड्स के लिए हम वेट करेंगे और फ सेकंड्स बाद फाइनली हमारे पास हमारा डटा वन आ जाएगा और सक्सेस मिल गई अब क्योंकि हम प्रॉमिस को यूज़ कर रहे हैं हमें कॉल बैक यूज़ करने की जरूरत नहीं है यानी ये जो गेट नेक्स्ट डाटा ये जो हमें कॉम्प्लेक्शन पास हो रहा है क्या अजीब सी चीजें चल रही हैं इसको करने की अब हमें जरूरत ही नहीं है तो अब हमारा फंक्शन क्या होगा सिंपल सा फंक्शन होगा आप मुझे डाटा आईडी दो मैं आपको प्रॉमिस देता हूं कि 5 सेकंड बाद आपको आपका डाटा रिटर्न करके दूंगा तो 5 सेकंड बाद हमें हमारा डटा मिलेगा और हमारा प्रॉमिस रिजॉल्व हो जाएगा तो अब फर्स्ट डाटा तो हमने इस तरीके से ले लिया सेकंड डाटा किस तरीके से ले बेसिक ली हमें पता है ये जो गेट डटा वन है हमें वेरिएबल की जरूरत नहीं है एज सच हमें p1 की जरूरत नहीं है हम डायरेक्टली क्या लिख सकते हैं गेट डटा वन डॉट देन इस तरीके से लिख सकते हैं तो हमारे पास हमारा डाटा वन आ जाएगा कैसे आएगा फाइव सेकंड्स का हमें वेट करना पड़ेगा 1 2 3 4 एंड फाइव फाइनली और हमारे पास हमारा डेटा प्रिंट होकर आ जाएगा अब सेकंड डाटा के लिए हमें कॉल कब लगानी है सेकंड डाटा के लिए कॉल लगानी है हमें जब हमारे पास फर्स्ट डेटा आ जाए यानी हमारा रिजल्ट प्रिंट हो जाए तो सेकंड डटा के लिए हम यहां पर कॉल लगाएंगे गेट डटा टू और गेट डटा टू से भी हमारे पास कुछ कुछ रिजल्ट आएगा तो यहां पर दोबारा से हम डॉट देन लिख सकते हैं और डॉट देन के अंदर हम अपना जो रिजल्ट है उसे सेकंड टाइम प्रिंट करवा सकते हैं थोड़ा सा टाइम डिक्रीज कर लेते हैं टू थ सेकंड्स तो अब क्या होगा हमारे पास डेटा वन की रिक्वेस्ट जाएगी फिर डेटा वन प्रिंट हो जाएगा और डेटा वन का रिजल्ट भी प्रिंट हो जाएगा फिर गेट डटा टू की रिक्वेस्ट जाएगी फिर डेटा टू का रिजल्ट प्रिंट होगा रिफ्रेश करेंगे 1 2 3 डटा वन आ गया दोबारा से 1 2 3 डाटा टू आ गया तो इस तरीके से 3 सेकंड के डिले के बाद हमारी जो वेवे है वो चलती रहेंगी अब इसे लिखने का एक और बेटर तरीका है बेटर तरीका यह है कि यहां पर ये डॉट देन लगाने की बजाय सिंपलर तरीका जिसको हम एक्चुअल प्रॉमिस चेन कहते हैं हम इसे रिटर्न कर देंगे जो भी गेट डाटा से मेरे पास आएगा उसे हम रिटर्न कर देंगे यहां से एंड ये रिजल्ट अभी के लिए प्रिंट नहीं करवाते हैं गेट डेटा से जो भी आएगा उसे रिटर्न कर देंगे डटा से रिटर्न करने का मतलब क्या होगा कि ये जो डॉट देन फंक्शन है अभी ये मुझे प्रॉमिस रिटर्न करेगा क्योंकि ये मुझे गेट डाटा टू वाला प्रॉमिस रिटर्न करेगा तो उसके ऊपर दोबारा से हम एक डॉट देन लगा सकते हैं तो दोबारा से वी कैन डू अ डॉट देन एंड यहां पर हम कसोल डॉट लॉग कर सकते हैं अपना रिजल्ट लॉक करवा लेते हैं दिस इज़ गोइंग टू बी द रिजल्ट तो ये मेरा फाइनल रिजल्ट होगा तो इसको एक्चुअली हम प्रॉमिस चेनिंग कहते हैं प्रॉमिस चेनिंग क्या है गेट डाटा वन को कॉल लगाई सक्सेसफुल हो गई तो डटा टू को कॉल लगाओ और इसे रिटर्न कर दो ये भी सक्सेसफुल हो गई तो फिर हम डटा थ को भी लगा सकते हैं फाइनल सक्सेस मैसेज रिसीव कर सकते हैं तो पहले हमें 3 सेकंड्स वेट करना पड़ेगा हमारे पास डाटा वन आएगा फिर दोबारा 3 सेकंड वेट करना पड़ेगा फिर डटा टू आएगा और फाइनली सक्सेस का मैसेज ऐसे ही हम चाहे तो डटा थ की भी कॉल लगा सकते हैं रिटर्न डाटा ऑफ थी या यहां पर गेट डाटा ऑफ थ्री हम कर लेते हैं एंड इसके ऊपर भी इसी तरीके से हम एक और डॉट देन लगा देंगे डॉट देन के अंदर इस बार कसोल डॉट लॉग कर देंगे फाइनली अपना सक्सेस सेव कर लेते हैं टाइम थोड़ा सा कम कर लेते हैं 2 सेकंड्स तो क्या हुआ पहले डटा वन आएगा सक्सेसफुल हो गया तभी डेटा टू आएगा सक्सेसफुल हो गया तभी डटा थ्री आएगा सक्सेसफुल हो गया तो फाइनली सक्सेस कर दो रिफ्रेश किया 2 सेकंड्स का डिले डेटा वन 2 सेकंड्स का डिले उसके बाद डेटा टू दो सेकंड्स का डिले उसके बाद डेटा थ एंड सक्सेस इज नॉट डिफाइंड ओके फाइनली हमें यहां पे रिजल्ट को प्रिंट करना था बट आई होप कि हमें समझ में आ रहा है कि हमारा काम कैसे चल रहा है हमारा डॉट देन के अंदर हम एक और डॉट देन लगा रहे हैं एक और डॉट देन लगा रहे हैं दिस इज कॉल्ड अ चेन ऑफ डॉट डेंस दिस इज कॉल्ड अ चेन ऑफ प्रॉमिस और इसको हम प्रॉमिस चेन या प्रॉमिस चेनिंग भी कहते हैं एंड अगर इसी सेम कोड को हम थोड़ा सा अपने कॉल बैक हेल वाले कोड से कंपेयर करें यह वाला कोड डिफिकल्ट टू अंडरस्टैंड है यह वाला कोड थोड़ा सा उससे बेटर लग रहा है काम दोनों ही कर रहे हैं सेम काम कर रहे हैं बस ये वाला कोड जो है थोड़ा सा इजियर टू अंडरस्टैंड होता है एज कंपेयर टू कॉल बैक हेल वाला कोड पर अगेन ये कोड भी बहुत अच्छा नहीं है मतलब इससे भी एस सच बहुत अच्छे से समझ में नहीं आ रहा कि क्या चल रहा है एगजैक्टली क्योंकि इसके अंदर भी आप कसोल डलॉग वाली स्टेटमेंट्स ऐड कर दोगे तो ये भी कॉम्प्लेक्शन स्टार्ट हो जाएगा यानी यहां पर इफ आई ऐड दिस स्टेटमेंट डटा ले रहे हैं या यहां पर हम डाटा टू ले रहे हैं यहां पर हम डटा थ्री ले रहे हैं तो इस तरीके की हम स्टेटमेंट्स ऐड कर देंगे तो ये भी कॉम्प्लेक्शन करते हैं गेटिंग डेटा वन फिर डेटा वन आ गया अब डेटा टू गेट कर रहे हैं ओके कुछ अजीब सी चीज हुई यहां पर अच्छा अजीब सी चीज ये हुई क्योंकि कॉल बैक हेल वाला कोड हमारा साथ में रन कर रहा है रिफ्रेश करेंगे गेटिंग डाटा वन दो सेकंड बाद डेटा वन आ गया अब डेटा टू गेट कर रहे हैं दो सेकंड बाद डेटा टू आ गया डेटा थी गेट करें दो सेकंड बाद डेटा थ्री आ गया फिर फाइनली सक्सेस आ गया ये सेम काम हमने कॉल बैक हेल से किया सेम काम हमने प्रॉमिस चेनिंग से किया बट प्रॉमिस चेंस भी डिफिकल्ट टू अंडरस्टैंड होती है इसीलिए हम एक और लेवल ऊपर जाके एक और नया कांसेप्ट सीखेंगे व्हिच इज अ सिंक एंड अ वेट तो अभी तक की हम समरी ले तो हमने सीखा कि कॉल बैक्स क्या होते हैं और कॉल बैक के अंदर कॉल बैक हेल क्या होता है पर हमें यह पता चला उससे बेटर चीज है प्रॉमिस और प्रॉमिस के अंदर हमने सेम काम प्रॉमिस चेनिंग से किया अब हम सीखेंगे इस से भी बेटर सिंटेक्स हमारे पास होता है अस सिंक अवेट का तो जो मैंने शुरुआत में बताया था कि ये चीजें हम सीखते हुए चले जाएंगे वही सेम चीजें हम सीख रहे हैं तो अब स्टार्ट करते हैं अपने अंक अवेट के साथ अस सिंक अवेट हमारे दो कीवर्ड्स हैं जावास्क्रिप्ट के अंदर जिनका काम होता है बेसिकली एसिंक्रोनस प्रोग्रामिंग को सिंपल बनाना क्योंकि कॉल बैक हेल ने तो बहुत डिफिकल्ट कर रखा था प्रॉमिस चेनिंग ने थोड़ा सा सिंपल किया अब असं अवेट और सिंपल कर देंगे चीजों को अस सिंक कीवर्ड बेसिकली हम फंक्शंस के साथ यूज करते हैं हम किसी भी नॉर्मल फंक्शन को असं फंक्शन बना सकते हैं और जो तो एक एसिंक फंक्शन होता है वो क्या करता है इट रिटर्न्स अ प्रॉमिस एसिंक फंक्शन ऑलवेज रिटर्न्स अ प्रॉमिस और किसी भी नॉर्मल फंक्शन को एसिंक बना सकते हैं फॉर एग्जांपल अपने कोड पर आ जाते हैं यहां पर हम एक नॉर्मल फंक्शन बनाते हैं लेट्स कॉल इट हेलो एक फंक्शन बनाया हेलो एंड इसका काम है टू कसोल डलॉग हेलो अब इस फंक्शन के सामने हम अपना ए सिं कीवर्ड लिख सकते हैं तो अब ये एक ए सिं फंक्शन हो गया अब जैसे ही हम अपने रिफ्रेश कर लेते हैं जैसे ही हेलो को एग्जीक्यूट करेंगे वैसे ही क्या करेगा हेलो तो प्रिंट करवा रहा है पर ये फंक्शन ऑटोमेटिक हमें एक प्रॉमिस रिटर्न करके देगा लद हमने कहीं डिफाइन नहीं किया कि कौन सा प्रॉमिस रिटर्न करना है क्या रिजॉल्व होगा हमने रिटर्न स्टेटमेंट भी नहीं लिखी पर जैसे ही आपने ए सिंक लिख दिया मतलब इस फंक्शन का काम है टू रिटर्न अ प्रॉमिस कंपलसरी तो एंक फंक्शन का ये हमारे पास मतलब होता है अब किसी भी फंक्शन को हम चाहे तो एंक बना सकते हैं सेकंड कीवर्ड हमारे पास होता है अवेट कीवर्ड अवेट का इंग्लिश के अंदर मतलब होता है टू वेट किसी चीज का इंतजार करना तो अवे ट कीवर्ड जहां भी यूज होता है इट पोजस द एग्जीक्यूशन ऑफ इट्स सराउंडिंग एसिंग फंक्शन अंट्स मान लेते हैं दूसरे फंक्शन को कॉल लगा रहे हैं फॉर एग्जांपल हम किसी फंक्शन को कॉल लगा रहे हैं जिस फंक्शन से हमें पता है कि इस फंक्शन से कोई प्रॉमिस आने वाला है अगर इस तरीके की हम कॉल लगा रहे हैं तो अगर इसी फंक्शन के सामने हम अवेट लिख देते हैं तो इसका मतलब अवेट क्या करेगा अवेट वेट करेगा प्रॉमिस का और अवेट आसपास वाली सारी एग्जीक्यूशन को रोक कर वेट करेगा जब तक हमारा प्रॉमिस हमारे पास सेटल नहीं हो जाता मतलब जब तक प्रॉमिस पेंडिंग है तब तक हम वेट ही करते रहेंगे तो यहां अवेट यूज़ होता है टू पॉज द एग्जीक्यूशन ऑफ द सराउंडिंग एसिंक्रोनस फंक्शन अब एक और इंटरेस्टिंग चीज अवेट कीवर्ड को हम सिर्फ किसी एसिंक फंक्शन के अंदर ही यूज़ कर सकते हैं अवेट को हम नॉर्मली यूज़ नहीं कर सकते उसे सिर्फ किसी एसिंक फंक्शन के अंदर ही हम यूज़ कर सकते हैं अब कैसे यूज़ करते हैं फॉर एग्जांपल एक रैंडम फंक्शन है हमारे पास इसको कह देते हैं अपनी एपीआई कि हमारे पास कोई एपीआई है और यह एपीआई क्या करती है यह हमें एक न्यू प्रॉमिस रिटर्न करती है कोई भी नॉर्मल एपीआई हो सकती है यह हमें एक प्रॉमिस रिटर्न करती है प्रॉमिस के अंदर हमारे पास कंसोल डॉट लॉक करके लेट्स सपोज हमारे पास वेदर का डाटा आता है और दिस इज रिजॉल्व दिस इज रिजेक्ट ये हमारी एपीआई है जो हमें वेदर का डाटा देती है और यह रिजॉल्व भी हो सकती है रिजेक्ट भी हो सकती है जैसे ही वेदर का डाटा दे देगी वैसे ही हम इसे रिजॉल्व कर देंगे विद अ मैसेज ऑफ सक्सेस या सक्सेस की जगह जो हमारे वेबसाइट्स होती हैं सक्सेस के अंदर मैसेज के लिए बेसिकली हम 200 ये नंबर पास करते हैं 200 रिप्रेजेंट्स अ सक्सेसफुल एपीआई कॉल तो हम रिजॉल्व कर देंगे विद अ मैसेज ऑफ़ 200 अब अगर हम चाहते हैं कि ये जो काम है ये इमीडिएट ना हो एपीआई 2 सेकंड के बाद डाटा रिटर्न करे तो ये सारा जो कोड है इसे हम सेट टाइम आउट के अंदर लिख सकते हैं सेट टाइम आउट सेट टाइम आउट के अंदर हम अपना फंक्शन बना लेंगे एरो फंक्शन उसके अंदर काम लिख देंगे और 2 सेकंड का हम डिले दे देंगे सो ये हमारा नॉर्मल एक फंक्शन है व्हिच इज आवर एपीआई अब हमें पता है हमारी ये जो एपीआई कॉल होगी ये कॉल क्या है एक एसिंक्रोनस कॉल है मतलब इस कॉल को एग्जीक्यूट होने में कुछ टाइम लगेगा तो हम इसके सामने अवेट को यूज कर सकते हैं कि कॉल तो लगाओ बट वेट करो आगे का काम करने से पहले वेट करो उस कॉल के कंप्लीट होने का बट अवेट को इस तरीके से नॉर्मली प्रोग्रामिंग के अंदर यूज नहीं कर सकते हमारे पास एरर आ जाएगा अवेट इज ओनली वैलिड इन एसिंग फंक्शंस एंड द टॉप लेवल बॉडीज ऑफ मॉड्यूल अभी के लिए इसको इग्नोर करते हैं अवेट जनरली एसिंक फंक्शंस के अंदर यूज होती है तो इस अवेट को ऐसे लिखने की बजाय हम एक नया एसिंक फंक्शन बनाएंगे फंक्शन यहां पर लेट्स मेक इट ए सिंक फंक्शन और इसको कह देते हैं गेट वेदर डाटा इस तरीके का कुछ हमने फंक्शन बना दिया और इसके अंदर हम अवेट एपीआई यूज कर सकते हैं रिफ्रेश करेंगे एंड यहां पर वी विल बेसिकली कॉल आवर गेट वेदर डाटा वेदर डाटा एंड इसको कॉल लगाएंगे एक सेकंड दो सेकंड हमने वेट किया और हमारे पास वेदर का डाटा आ गया दोबारा से अगर रिफ्रेश करके इसे कॉल लगाए तो अभी हमारा प्रॉमिस क्या है अभी प्रॉमिस पेंडिंग है लेकिन जैसे ही हमारी ये कॉल कंप्लीट हो जाएगी हमारा प्रॉमिस फुलफिल हो जाएगा तो हम अस सिंक अवेट को कुछ इसी तरीके से यूज करते हैं हमारे पास ऑलरेडी कोई फंक्शन होता है जो प्रॉमिस रिटर्न कर रहा होता है बट उस प्रॉमिस को एक्सेप्ट करने के लिए हम अपने देन कैच कॉल बैक्स को यूज नहीं करते हम क्या करते हैं अस सिंक और अवेट को कुछ इस तरीके से यूज़ करते हैं अब लेट्स सपोज हमें इस एपीआई कॉल को दो बार कॉल लगानी है इस एपीआई को हमें दो बार कॉल लगानी है पहले हमें फर्स्ट टाइम डेटा चाहिए उसके बाद हमें दोबारा से डेटा चाहिए तो हम अवेट एपीआई की फर्स्ट कॉल लगा सकते हैं तो जैसे ही फर्स्ट कॉल जाएगी हमारा सारा एग्जीक्यूशन रुक जाएगा इस फंक्शन का यानी पहले यह काम होगा तभी बाकी के सारे काम होंगे फिर हम दूसरी कॉल लगाएंगे तो फिर सेकंड कॉल जाएगी तो पहले फर्स्ट कॉल कंप्लीट होगी तभी सेकंड कॉल कंप्लीट होगी सेव कर लेते हैं रिफ्रेश करते हैं पहले फर्स्ट टाइम हमारे पास डेटा आएगा फिर हम 2 सेकंड का वेट करेंगे फिर सेकंड टाइम हमारे पास डेटा आएगा कुछ इस तरीके से अब यही जो सेम कांसेप्ट है असं अवेट का इसे हम यूज कर सकते हैं अपने इस वाले गेट डाटा वाले फंक्शन के अंदर तो यह हमारा बेसिक सा एग्जांपल था जिसमें हमने एपीआई की कॉल लगाई थी बेसिकली हमारे लिए प्रॉब्लम यह होती थी कि कैसे हम एसिंक्रोनस में वेट कराएं कैसे इस तरीके की कंडीशन क्रिएट करें कि पहला पहला काम हो तभी दूसरा काम हो रहा हो दूसरा काम हो तभी तीसरा काम हो रहा हो यानी ्र में पहले यूजर नेम चेक हो तभी हमारा पासवर्ड चेक हो तभी हमारे यूजर को एक्सेस मिल जाए तो उस तरीके के काम के लिए अंक अवेट हमारे लिए एक सूटेबल सिंटेक्स हमें प्रोवाइड करता है अब असं अवेट को यहां पर कैसे यूज करेंगे लेट्स राइट आवर हेडिंग असं अवेट असं अवेट को बेसिकली गेट डाटा इसके साथ यूज करने के लिए हमें गेट डाटा को कॉल लगानी है अपने आईडी के साथ और हमें उसे अवेट करना है अब अवेट नॉर्मली तो कर नहीं सकते तो हम एक एंक फंक्शन लगा सकते हैं जिसको कह सकते हैं गेट ऑल डाटा या इस तरीके का कुछ हम फंक्शन बना सकते हैं इसे फंक्शन कह देते हैं एंड इसके अंदर हम अवेट करेंगे गेट डाटा को यानी गेट डाटा को कॉल लगाएंगे विद आईडी वन और इसे हम अवेट करेंगे और ये वाली कॉल कंप्लीट होगी तभी हम आईडी टू के साथ साथ कॉल लगाएंगे ये वाली कॉल कंप्लीट होगी तभी आईडी थ के साथ कॉल लगाएंगे इसे सेव कर लेते हैं एंड अब इस फंक्शन को हम कॉल लगा देते हैं रिफ्रेश गेट ऑल डाटा को कॉल लगाएंगे अभी हमारे पास पेंडिंग प्रॉमिस है दो सेकंड फर्स्ट डटा दो सेकंड सेकंड डेटा दो सेकंड वेट किया थर्ड डाटा एंड इसी तरीके से अगर हमें सिक्स टाइम्स यानी अलग-अलग आईडी के साथ डाटा को एक्सेस करना होता तो उसको सिंपली हम ऐसे ही लिखते यानी अवेट कहने का मतलब है हमें पहले से पता है कि ये जो कॉल जा रही है इसके लिए वेट किया जाएगा हम आगे नहीं बढ़ेंगे मैं दिखा भी देती हूं कैसे कसोल डलॉग गेटिंग डटा वन ये हमारी फर्स्ट स्टेटमेंट हो गई उसके बाद यहां सेकंड स्टेटमेंट आ जाएगी यहां थर्ड स्टेटमेंट आ जाएगी यहां फोर्थ स्टेटमेंट आ जाएगी यहां फिफ्थ स्टेटमेंट आ जाएगी एंड सो ऑन फाइव तक ही रख लेते हैं सेव तो बेसिकली इस कोड को अब अगर हम पढ़कर देखेंगे तो ये हमें कंपैरेटिव काफी आसान कोड लगेगा एस कंपेयर टू जो हम प्रॉमिस यूज कर रहे थे कॉल बैक हेल यूज कर रहे थे उसके कंपेरिजन में दिस कोड इज वेरी इजी टू रीड कि पहले इसको एग्जीक्यूट करो जैसे ही अवेट मिल गया अब यहां रुकना पड़ेगा फिर इसको एग्जीक्यूट करो जैसे ही अवेट मिल गया अब यहां रुकना पड़ेगा इस तरीके से हमारा कोड एग्जीक्यूट होगा रिफ्रेश करेंगे एंड लेट्स कॉल गेट ऑल डाटा गेटिंग डेटा वन आ रहा है फिर डेटा वन आ गया अब डेटा टू आएगा डटा टू आ गया डेटा थ्री को गेट कर रहे हैं डटा थ्री आ गया डेटा फोर को गेट कर रहे हैं डटा फोर आ गया डेटा फाइव को गेट कर रहे हैं और फाइनली हमारे पास डेटा फाइव आ गया तो इस तरीके से हमारा अस सिंक अवेट काम करता है अब फॉर रेफरेंस मैं आपको तीनों कोड दिखाने वाली हूं और अब फाइनली हमें समझ में आएगा कि कौन सी वो जर्नी थी जिसकी हम शुरुआत में बात कर रहे थे कि कॉल बैक हेल से हम प्रॉमिस पे जाएंगे प्रॉमिस से हम असं कावेट में जाएंगे तो क्यों जा रहे थे उस डायरेक्शन में तीनों कोड को कंपेयर करते हैं दिस वाज आवर कॉल बैक हेल वाला कोड इवन दो ये काफी बेसिक एग्जांपल है तो उसमें आपको ये चीज सिंपल लग रही होगी पर नॉर्मल सिनेरियो उस के अंदर कॉलबैक हेल बिल्कुल भी सिंपल नहीं होता बहुत बड़े-बड़े कोड्स होते हैं तो उसके अंदर काफी कॉम्प्लेक्शन हो जाती है ये चीजें कॉल बैक हेल का कोड ऐसा दिखता था अगर हम इसे फर्स्ट टाइम देखेंगे तो हमें बिल्कुल हिट नहीं करेगा कि इस कोड के अंदर क्या चल रहा है वी आर नॉट गोइंग टू अंडरस्टैंड उसके बाद प्रॉमिस का कोड कुछ ऐसा दिख रहा था इसके अंदर अगर हमें देन पता है कैसे चल रहा है तो थोड़ा बहुत हमें आईडिया लगता है कि ठीक है एक चीज कंप्लीट हो रही है फिर दूसरी आ रही है फिर दूसरी कंप्लीट हो रही है फिर तीसरी आ रही है इस तरीके का कुछ चल रहा है बट अगर हम इस कोड को देखेंगे दिस इज वेरी इजी टू अंडरस्टैंड इनफैक्ट पहले वाले कोड्स में तो मैंने बस तीन डेटा गेट किए हैं तीन डेटा गेट करने का कोड तो सिर्फ इतना होगा यहां पर कि पहले हम डेटा वन को गेट कर रहे हैं गेट कर लिया वेट करो सेकंड को गेट कर रहे हैं उसके लिए वेट करो थर्ड को गेट कर रहे हैं उसके लिए वेट करो इट इज अ वेरी सिंपल एंड वेरी इजी टू अंडरस्टैंड कोड इसीलिए अस सिंक अवेट बहुत यूजफुल होता है बहुत काम का होता है एंड एक और चीज हमें ध्यान रखनी है जनरल प्रोग्रामिंग के अंदर कि जब भी हमारे पास चॉइस होती है या तो हम असं अवेट को यूज करते हैं या फिर प्रोग्रामिंग के अंदर हम डॉट देन को यूज करते हैं ऐसा नहीं है डॉट देन डॉट कैच इनको हम कभी भी यूज नहीं करते यूज करते हैं पर जनरली जहां डॉट देन डॉट कैच यूज होता है वहां असं का वेट यूज नहीं होता जहां ये यूज हो रहा होता है ये यूज़ नहीं होता पर मैक्सिमम सिनेरियो के अंदर हम अस सिंक अवेट को यूज़ करेंगे बिकॉज़ इट इज अ बेटर वे ऑफ़ प्रोग्रामिंग इट इज अ सिंपलर टू अंडरस्टैंड वे ऑफ़ प्रोग्रामिंग तो आई होप हमें समझ में आया होगा कि हमारी एसिंक्रोनस प्रोग्रामिंग किस तरीके से काम कर रही है जावास्क्रिप्ट के अंदर और क्यों हमें अंक अवेट कीवर्ड्स जैसों की जरूरत पड़ी अब यहां पर एक छोटी सी प्रॉब्लम जो हम एनकाउंटर कर रहे हैं वो ये है कि जैसे हम ये प्रॉमिस चेनिंग वाला कोड लिख रहे थे या हम कॉलबैक हेल वाला कोड लिख रहे थे इसमें हमारा ऐसे कोई नॉर्मली अगर हम कोड लिख रहे हैं तो उसे हमें किसी फंक्शन के अंदर डालने की जरूरत नहीं है इसे अभी केलिए कॉमेंट आउट कर देते हैं या ये कोड भी है ये ऑटोमेटिक एग्जीक्यूट करेगा इसको हमें किसी फंक्शन के अंदर डालने की जरूरत नहीं है पर जब भी हम असं का वेट को यूज़ कर रहे हैं हमें इस कोड को एक फंक्शन के अंदर डालना पड़ता है और फिर उस फंक्शन को हमें कॉल करना पड़ता है फर्स्ट टाइम फर्स्ट टाइम एक बार तो कॉल ही करना पड़ रहा है और ये कॉल क्या है अननेसेसरी कॉल है तो इससे बचने का भी एक तरीका होता है जावास्क्रिप्ट के अंदर और इस कॉल से बचने का तरीका हमारे पास होता है आईआईएफ ई इनको हम इफीस भी कहते हैं इट इज इमीडिएट इन्वोक्ड फंक्शन एक्सप्रेशन ये दिस इज़ पार्ट ऑफ एडवांस जावा स्क्रिप्ट वैसे हम इन जनरल आप बहुत ज्यादा यूज नहीं कर रहे होंगे आईआईएफ का एफज का बट मैं आपको एक तरीका दिखा रही हूं कि एक प्रॉब्लम हमारे पास आई कि अननेसेसरीली अपने कोड को हमें जो डायरेक्टली एग्जीक्यूट हो जाना चाहिए था उसको एक फंक्शन के अंदर डालना पड़ा क्यों डालना पड़ा क्योंकि अवेट को नॉर्मली एग्जीक्यूट नहीं कर सकते थे और यहां पर हमें कॉल लगानी पड़ी तो उसके लिए हमारे पास इफी होते हैं इफी हमारा एक ऐसा फंक्शन होता है जो इमीडिएट एग्जीक्यूट हो जाता है एज सून एज इट इज डिफाइंड मतलब यहां पर इस फंक्शन की जगह अगर हम कुछ इस तरीके से लिख दें इफी कैसे डिफाइंड होते हैं तीन तरीके के होते हैं किसी भी नॉर्मल फंक्शन को इफी में कन्वर्ट इफी फंक्शन ही होते हैं बस उनका कोई नाम नहीं होता और वो फंक्शन एक ही बार यूज़ होते हैं एक बार लिखे जाते हैं और जहां लिखे जाते हैं वहीं एग्जीक्यूट हो जाते हैं उन्हें एग्जीक्यूट करने के लिए अलग से कॉल नहीं लिखनी पड़ती जैसे मैंने लिखा फंक्शन सिंपली पेंसिस इस फंक्शन का कोई नाम नहीं है हमने यह फंक्शन बनाया कुछ इस तरीके से हमारे पास लेट्स सपोज कोई भी नॉर्मल फंक्शन है दिस इज़ माय नॉर्मल फंक्शन विदाउट नेम इसको हम क्या करते हैं पैरेंस के अंदर डाल देते हैं और इसके बाद एक और पैरेंस ऐड कर देते हैं इसको एग्जीक्यूट करने के लिए तो ये हमारा बन जाता है इफी अब ये जो अंदर वाला फंक्शन है ये एक नॉर्मल फंक्शन भी बन सकता है विद अ फंक्शन कीवर्ड ये हमारा एक एरो फंक्शन भी हो सकता है या फिर ये हमारा एक एसिंक फंक्शन भी हो सकता है कोई भी फंक्शन हो सकता है कुछ भी डालो अंदर एक फंक्शन होना चाहिए वैलिड बिना नाम का बस उसे पैरेंस के अंदर डाल दो और उसके बाद एक पैरेंस लगा दो कि ये तो मेरी फंक्शन है और ये उसको एग्जीक्यूट किया जा रहा है यहीं के और फिर हम लगा देते हैं और फिर हम लगा देते हैं अपने सेमीकलन तो इस फंक्शन को अब इस फंक्शन को तो मुझे कॉल लगानी पड़ेगी पर मुझे ऐसा एक इफी बनाना है जो अपने आप एक्यूट हो जाए तो उसके लिए क्या करना है नाम इसका हटा दो नाम हमने हटा दिया अब ये इतना रह गया इस फंक्शन को हम प पेंसिस के अंदर एंक्लोज कर देंगे बंद कर देंगे और उसके बाद एक और फंक्शन और उसके बाद एक और पैरेंस पेयर लगा देंगे और फिर सेमीकलन सेव कर लेते हैं अब ये जो है कोड ये अपने आप एग्जीक्यूट हो जाएगा जैसे ही रिफ्रेश किया इस बार गेट डटा वन को मुझे कॉल लगाने की जरूरत नहीं पड़ी ऑटोमेटिक मेरा फंक्शन एग्जीक्यूट हो रहा है सो दिस इज द पॉइंट ऑफ यूजिंग एन इफी कि ऑटोमेटिक कोड एग्जीक्यूट हो जाएगा इसका नुकसान ये है कि इसको आप कभी दोबारा यूज नहीं कर पाएंगे तो इसको कॉपी पेस्ट करना पड़ेगा हमें कंप्लीट बट इफी इस का पॉइंट ही यही होता है कि आपको ऐसा कोड जो इमीडिएट आपको एग्जीक्यूट कराना है और एक ही बार आप उसको यूज करना चाहते हैं ये जनरली हम उन केसेस में यूज़ करते हैं जब हमें अवेट करना होता है पर एक ही बार हमें कॉल लगानी है फंक्शन हमें एज सच क्रिएट करने की जरूरत नहीं है तो इफ ही बनाकर उसको उसको हम एग्जीक्यूट कर सकते हैं तो एपीआई कॉल्स के अंदर जनरली हम इसको यूज़ कर सकते हैं बाकी वी कैन आल्सो गो एंड रीड अबाउट इफी इज इन डिटेल तो इफ ी इज इमीडिएट इन्वोक्ड इमीडिएट इवोक ना यानी जैसे ही आप आपने लिखा इमीडिएट जैसे ही आपने लिखा वैसे ही कॉल हो जाएगा ऐसा फंक्शन का एक्सप्रेशन है आई होप मतलब हमें समझ में आया होगा तो इफी के दो पार्ट होते हैं फर्स्ट इज़ द एनोनिमस फंक्शन विद लेक्सिक स्कोप एंक्लोज्ड इन पेंसिस एंड सेकंड इज दोबारा से एक और पैरेंस पेयर जो उसको रन करता है अब क्यों यूज़ होते हैं फीज उसके कई सारे रीजंस होते हैं कई सारे फायदे होते हैं सबसे पहला अवॉइड पोल्यूटिंग द ग्लोबल नेम स्पेस कई बार हम फंक्शंस बनाते हैं फंक्शंस के अंदर अननेसेसरी हमारे पास वेरिएबल क्रिएट हो जाते हैं और अगर हमें ऐसा फंक्शन बनाना है जो उसको हम बार-बार यूज़ नहीं कर रहे तो उसके अंदर बहुत सारे अगर अननेसेसरी वेरिएबल होंगे तो उनकी हमें जरूरत नहीं है तो एक साथ क्या करो इफी बना दो इफी जैसे ही एग्जीक्यूट हो जाएगा वैसे ही वो वेरिएबल भी डिलीट हो जाएंगे मेमोरी के अंदर से दूसरा होता है जब भी हम किसी एसिंक फंक्शन को एग्जीक्यूट करना चाहते हैं वैसे के वैसे जो हमारा यूज़ केस हमने यहां पर देखा कि अननेसेसरी मुझे गेट ऑल डाटा बनाना पड़ा इसको बनाने की जरूरत नहीं थी इस तरीके से इफ ही बनाना था तो ये एक प्रैक्टिकल यूज़ केस है उस चीज का तो इस तरीके से और भी यूज़ केसेस हैं इनको जाकर आप पढ़ सकते हैं ऑन दिस लिंक अपऑन एम ऑन द एमडीएन पेज एंड दिस वाज ऑल अबाउट एसिंक्रोनस प्रोग्रामिंग इन जावास्क्रिप्ट आई होप कि ये चैप्टर करने में हमें मजा आया होगा आई अंडरस्टैंड कि एज अ बिगनर फर्स्ट टाइम अगर हम इस तरीके के टॉपिक्स को सुनते हैं हमारे दिमाग में बहुत अशांति छा जाती है बट ये सारे कॉन्सेप्ट्स इंपॉर्टेंट हैं इनफैक्ट ये सारे कॉन्सेप्ट्स आपको रियल लाइफ डे टू डे प्रोग्रामिंग के अंदर देखने को मिलेंगे जावास्क्रिप्ट के अंदर एंड सेकंड इंटरव्यूज के अंदर बहुत मजेदार तरीके से इनके अंदर से सवाल आते हैं तो इन कॉन्सेप्ट्स को समझना बहुत जरूरी है ये ऐसा चैप्टर है एंड ये ऐसे कांसेप्ट हैं जो शायद ही किसी को फर्स्ट टाइम के अंदर समझ में आ गए होंगे तो डेफिनेटली आपको तीन से चार बार लेक्चर को रिवाइंड कर कर के कर करके छोटी-छोटी चीज को पॉज कर करके समझना पड़ा होगा या समझ रहे होंगे अभी-अभी हम पर दीज आर इंपॉर्टेंट कांसेप्ट जो लॉन्ग टर्म प्रोग्रामिंग में हमें एक बहुत अच्छा बहुत बढ़िया डेवलपर बना रहे होंगे तो इस लेक्चर के बाद नेक्स्ट लेक्चर के अंदर हम फाइनली अपने एपीआई कॉल्स को सीखेंगे देखेंगे कि ये जो प्रॉमिस वाली पूरी कहानी हमने पढ़ी है ये प्रॉमिस वाली पूरी कहानी रियल लाइफ के अंदर प्रोजेक्ट्स बनाने में कैसे यूज़ होती है तो उस चीज को हम एक्सप्लोर करने वाले हैं अपने नेक्स्ट चैप्टर के अंदर हाय एवरीवन तो अब हम शुरुआत करने वाले हैं जावास्क्रिप्ट की सीरीज के अंदर अपने फाइनल चैप्टर के साथ जिसके अंदर हम बात करेंगे एपीआई की हम डिस्कस करेंगे कि कि किस तरीके से हम एपीआई कॉल्स जो हैं उनको इनिशिएटिव भेज सकते हैं और कुछ डेटा रिसीव कर सकते हैं अभी तक हमने प्रॉमिस के कांसेप्ट को पढ़ा है और वो कांसेप्ट हमें थोड़ा सा थियोरेटिकल लग सकता है पर आज के चैप्टर के अंदर हम समझ रहे होंगे कि किस तरीके से प्रॉमिस डे टू डे लाइफ में जावास्क्रिप्ट के अंदर हमें देखने को मिलते हैं और प्रैक्टिकली हम उनको यूज कर रहे होते हैं साथ के साथ अपनी जो एपीआई की नॉलेज है उसको यूज करके हम अपने लिए एक प्रोजेक्ट भी बिल्ड कर रहे होंगे एट दी एंड ऑफ दिस चैप्टर तो शुरुआत करते हैं सबसे पहले हम एक बेसिक सा अपना रिवीजन कर लेते हैं लास्ट क्लास में जो हमने सीखा था रिगार्डिंग एपीआई एपीआई के बारे में बात की थी कि एपीआई हमारा एक ऐसा सिस्टम होता है बेसिकली इसको हम ऐसे समझ सकते हैं कि किसी दूसरे व्यक्ति ने अपनी एक दूसरी वेबसाइट बनाई हुई है अपना एक सिस्टम बनाया हुआ है एक सर्वर बनाया हुआ है जिसके ऊपर हम कोई रिक्वेस्ट भेज सकते हैं रिक्वेस्ट में हो सकता है ये जो एपीआई है इसका काम हो सकता है बहुत सारी डिशेस की रेसिपी स्टोर करती है कि कि खीर कैसे बनती है या हलवा कैसे बनता है इस तरीके से बहुत सारे डिफरेंट डिफरेंट फूड आइटम्स है बर्गर कैसे बनता है पिज़्ज़ा कैसे बनता है इन सबके ये रेसिपी स्टोर करती है तो हमने रिक्वेस्ट भेजी कि हमें एक पिज़्ज़ा की रेसिपी चाहिए कि उसको किस तरीके से बनाना है तो एपीआई क्या करेगा हमें कुछ कुछ रिस्पांस भेजेगा और रिस्पांस के अंदर कुछ एक्यूरेट डाटा होगा कि किस तरीके से हम वो फूड आइटम है उसको प्रिपेयर कर सकते हैं उसको कुक कर सकते हैं इस तरीके का कुछ रिस्पांस आ रहा होगा तो एपीआई बेसिकली रिक्वेस्ट रिस्पांस साइकिल के ऊपर चलते हैं कि हम उन्हें कुछ रिक्वेस्ट भेजते हैं वो हमें रिस्पांस की फॉर्म में कुछ डाटा रिटर्न करके देते हैं और ये डटा क्या होगा वो डिपेंड करता है कि हम किस तरीके की एपीआई को यूज़ कर रहे हैं तो फाइनली हम एपीआई कॉल्स को करना सीख रहे होंगे आज के अपने सेशन के अंदर एंड एपीआई कॉल्स करने के लिए हम यूज़ करेंगे अपने लिए फेच एपीआई का और फेच एपीआई मैं आपको पहले ही बता देती हूं बहुत इजी लगेगा हमें यूज करने में यानी अभी तक हमने प्रॉमिस देख लिए कॉल बैक्स देख लिए वो सारा का सारा सिंटेक्स बहुत कॉम्प्लेक्टेड हमें देखने को मिल रहा होगा व्हिच विल बी रियली इजी टू अंडरस्टैंड अब जब भी हम फेच एपीआई की बात करते हैं किसी भी एपीआई की बात करते हैं एपीआई की फुल फॉर्म मैं आपको बता देती हूं एपीआई स्टैंड्स फॉर एप्लीकेशन प्रोग्रामिंग इंटरफेस और जनरली जो हमारी डे टू डे बेसिस पर हम एपीआई के साथ डील करते हैं वो बेसिकली ऐसा इंटरफेस होते हैं जो हमें कुछ डेटा रिटर्न करते हैं जैसे फॉर एग्जांपल हम किसी रेस्टोरेंट के अंदर गए रेस्टोरेंट के अंदर जो हमारा वेटर होता है वेटर को हम कुछ भी रिक्वेस्ट दे देते हैं कि हमें ये फूड आइटम्स ऑर्डर करने हैं तो वेटर क्या करता है किचन के अंदर जाता है और वहां से हमारे लिए खाना लेकर आ जाता है अब किचन के अंदर किस तरीके से खाना प्रिपेयर हुआ किसने खाना प्रिपेयर किया क्या-क्या इंग्रेडिएंट्स डले वो सारी चीजें हमें नहीं पता चलती हमें क्या पता चलता है हमें फाइनल आउटपुट यानी फाइनल रिजल्ट देखने को मिलता है वैसा ही कुछ इंटरफेस वैसा ही कुछ सिस्टम एपीआई होते हैं कि हम उन्हें रिक्वेस्ट भेज देते हैं वो अब डाटा कहां से एपीआई लेकर आई वो डेटा कितना एक्यूरेट है कितना नहीं है कैसे उस डेटा को प्रिपेयर किया गया है इन सारी चीजों से हमें कोई मतलब नहीं होता हमें बस फाइनल जो आउटपुट वाला डाटा है वो हमारी एपीआई हमें रिटर्न कर देती है अब एपीआई को कॉल करने से पहले हम एपीआई के कुछ-कुछ एग्जांपल्स को देखने वाले हैं सबसे पहले यहां पर हम जा सकते हैं यानी वी कैन लिटरली गो एंड सर्च फॉर फ्री एपीआई फ्री एपीआई पर हम जाएंगे तो बहुत सारे लिंक हमारे पास आते हैं जहां पर हमें काफी सारी फ्री पब्लिक एपीआई मिल जाती हैं हम किसी भी रैंडम लिंक पर जा सकते हैं अब जैसे यहां पर हमें एक लिस्ट मिल जाएगी ऑफ अ लॉट ऑफ फ्री एपीआई जैसे फॉर एग्जांपल हमें बुक से रिलेटेड एपीआई सर्च करनी है तो यहां पर बुक बुक्स से रिलेटेड हमारे पास बहुत सारी डिफरेंट डिफरेंट एपीआई आ जाएंगी बिजनेस से रिलेटेड एपीआई आ जाएंगी कैलेंडर से रिलेटेड एपीआई आ जाएंगी इसी तरीके से आप किसी दूसरे लिंक पर जाएंगे तो हमें वहां पर काफी सारी डिफरेंट एपीआई मिल जाएंगी जैसे फूड एपीआई फॉर एग्जांपल फूड एपीआई हमारे पास है अगर हम इस लिंक पर गए तो जनरली जो भी एपीआई होती है उनकी अपनी एक डॉक्यूमेंटेशन होती है डॉक्यूमेंटेशन के अंदर लिखा होता है कि किस तरीके से हम उस एपीआई को यूज कर सकते हैं और इस तरीके से एपीआई हमें किसी एक ऑब्जेक्ट फॉर्मेट के अंदर डाटा रिटर्न करके देती है तो जैसे यहां पर हमें ये ऑब्जेक्ट जैसा कुछ डाटा दिख रहा है इसी तरीके का डेटा हमें एपीआई रिटर्न करके दे दि है कब देती है जब हम इस तरीके के एक यूआरएल यानी एक लिंक के ऊपर रिक्वेस्ट भेज रहे होते हैं तो एपीआई आर नथिंग बट एंड पॉइंट्स जो हमारे यूआरएल एंड पॉइंट्स होते हैं यानी जैसे कोई लिंक होता है उसके ऊपर हमने रिक्वेस्ट भेज दी जैसे फॉर एग्जांपल हम google.com पर जाना चाहते हैं तो जैसे ही हमने google.com लिखा हम इस पेज पर आ गए तो हमारे ब्राउजर ने क्या किया हमारे ब्राउजर ने google.com को रिक्वेस्ट भेजी तो google2 को और एंड पॉइंट यानी वो जो लिंक है वो फिर हमें कुछ डाटा रिटर्न बैक करके देगा अब एग्जांपल के लिए हमारे पास बहुत सारी एपीआई होती हैं मैंने एक लिंक आपके लिए ऑलरेडी सेव करके रख रहा है सो दिस इज अ पेज जहां पे काफी सारी एपीआई हमारे पास अवेलेबल हैं जैसे एमे से रिलेटेड हो गई एंटी मैलवेयर कंप्यूटर्स फाइनेंस बहुत सारी डिफरेंट डिफरेंट एपीआई यहां पर अवेलेबल है हम कोई भी एक रैंडम एपीआई चूज कर सकते हैं तो लेट अस गो विद दिस कैट फैक्ट्स एपीआई जो हमें कैट से रिलेटेड फैक्ट्स जो हैं वो रिटर्न करके देगी अब ये जो एपीआई है इसका हम गिट हब का पेज भी देख सकते हैं डॉक्यूमेंटेशन भी देख सकते हैं एपीआई डॉक्यूमेंटेशन स्टार्ट डेवलपिंग पेज पर हम आ गए तो बेसिकली डॉक्यूमेंटेशन के अंदर लिखा हुआ है बेस यूआरएल फॉर ऑल एंड पॉइंट्स यानी सारे के सारे जो लिंक हैं इससे शुरू होंगे तो हिरोक पर ये होस्टेड है और एंड पॉइंट में हम स्लैश फैक्ट्स जब लगाएंगे तो हमारे पास कैट से रिलेटेड कोई रैंडम फैक्ट आएगा बेस यूआरएल यानी शुरू वाला लिंक तो ये हमने शुरू वाला लिंक लिखा और स्लैश फैक्ट्स जैसे ही हम एंटर करेंगे वैसे ही क्या होगा कुछ डेटा हमारे पास रिटर्न होकर आया अब ये डेटा किस फॉर्म में है हम अगर थोड़ा सा ज़ूम इन करें सो दिस इज बेसिकली एन एरे ये एरे फॉर्म में है क्योंकि बाहर स्क्वेयर ब्रैकेट्स लगे हुए हैं और अंदर कुछ ऑब्जेक्ट्स हैं पर अभी इस डेटा के अंदर क्या है उससे हमें ज्यादा मतलब नहीं रखना हमें एक चीज नोटिस करनी है कि हां कुछ डेटा हमारे पास रिटर्न होके आ रहा है जब हम किसको रिक्वेस्ट भेज रहे हैं जब हम इस लिंक को रिक्वेस्ट भेज रहे हैं तो ये बेसिकली हमारा एपीआई एंड पॉइंट है यानी हमारा यूआरएल है जिसको हमें रिक्वेस्ट भेजनी पड़ेगी अपनी एपीआई से डाटा वापस लाने के लिए अब ये तो है ब्राउजर से डायरेक्टली रिक्वेस्ट भेजना जब भी हम अपने ब्राउजर के ऊपर कोई भी लिंक पेस्ट करते हैं जैसे हम google.com लिखते हैं amazon.com लिखते हैं तो हमारा ब्राउजर ऑटोमेटिक रिक्वेस्ट भेज देता है उस लिंक के पास उस सर्वर के पास अब हम सीख रहे होंगे कि वो काम जो ब्राउजर हमारे लिए करता आ रहा था आज तक वो हम अपने जावास्क्रिप्ट के कोड से कैसे कर सकते हैं तो उसके लिए जो लिंक है इसे कॉपी कर लेते हैं लेट्स गो टू आवर कोड कोड के अंदर हमने index.htm ऑलरेडी बनाई हुई है हमारे पास बॉयलर प्लेट कोड है जिसको हमने app.js से कनेक्ट किया है ये हमारी app.js है इसके अंदर एक वेरिएबल बना लेते हैं यूआरएल कंस्ट यूआरएल के अंदर हमारा ये जो लिंक था जिसके ऊपर रिक्वेस्ट भेजने से ब्राउजर को डेटा मिल रहा था उससे हम भी अपने जावास्क्रिप्ट के कोड के थ्रू डेटा पाना चाहते हैं तो इस लिंक को हम सेव कर लेते हैं और बेसिकली जो हमें एपीआई कॉल करनी है वो इस लिंक को हमें कॉल करनी है और वहां से हमारे पास डाटा आएगा अपने पेज पर हम आ जा जाते हैं अब जब भी हम एपीआई कॉल करना चाहते हैं यूजिंग फेच एपीआई तो फेच एपीआई क्या होता है फेच एपीआई इज बेसिकली इट प्रोवाइड्स एन इंटरफेस फॉर फेचिंग फेचिंग का मतलब किसी चीज को लेकर आना तो जब भी हम कुछ रिसोर्सेस भेजना चाहते हैं या रिसीव करना चाहते हैं उसको हम कहते हैं फेच करना तो जब भी हमारे पास कोई एंड पॉइंट है यानी कोई यूआरएल है जिसे हम कोई रिक्वेस्ट भेजना चाहते हैं तो रिक्वेस्ट के अंदर हो सकता है हम कुछ एक्स्ट्रा डाटा भी सेंड कर रहे हो या जब इसका रिस्पांस हमारे पास आएगा यानी जब हम डाटा को रिसीव करेंगे यानी रिसोर्सेस को रिसीव करेंगे तो ये दोनों काम करने के लिए ही हम अपनी फेच एपीआई को यूज़ कर सकते हैं और फेच एपीआई इंटरनली एक रिक्वेस्ट एंड रिस्पांस ऑब्जेक्ट को यूज़ करती है अब इतना डिटेल में अभी हम नहीं जाएंगे पहले धीरे-धीरे समझेंगे पर ये हमें समझ में आ गया कि हमें फेच एपीआई नाम की एक चीज यूज़ करनी है डटा भेजने एंड रिसीव करने के लिए अब फेच एपीआई को यूज़ करने का मतलब होता है फेच मेथड को यूज़ करना फेच मेथड हमारे पास जावास्क्रिप्ट के अंदर ऑलरेडी होता है व्हिच इज यूज्ड टू फेच अ रिसोर्स यानी जो डेटा फेच करने के काम आता है और इसको लिखने का सिंटेक्स ये होता है कि हम फेच मेथड लिखते हैं और उसके अंदर अपना यूआरएल लिखते हैं यूआरएल यानी अपना लिंक और इतना लिखने से ऑटोमेटिक हमारा कोड इस लिंक के ऊपर एक रिक्वेस्ट भेज देता है रिक्वेस्ट भेजेगा तो कुछ डटा रिटर्न होकर आएगा पर फेच में क्या रिटर्न होकर आता है फेच में हमारे पास एक प्रॉमिस रिटर्न होकर आता है जो इवेंचर से इवेंचर या तो फुलफिल्ड हो जाएगा रिजेक्ट हो जाएगा बट ये क्या रिटर्न करता है ये हमें एक प्रॉमिस रिटर्न करता है तो यहां पे प्रैक्टिकल यूज़ केस हमारे पास आता है प्रॉमिस का जिनको हमने थोरेट्स अब बात कर रहे होंगे कि कैसे वो प्रॉमिस एक्चुअल एपीआई हमें रिटर्न कर रही होती है यूआरएल के साथ फेच मेथड के अंदर कुछ-कुछ ऑप्शंस भी होते हैं जिनको हम यूज़ कर सकते हैं पर अभी के लिए ऑप्शंस के डिटेल में जाएंगे अभी के लिए सिर्फ फेच मेथड को एक बार देखते हैं फेच मेथड को यूज़ करने के लिए बेसिकली हम लिख सकते हैं फेच और उसके अंदर हम पास कर देंगे अपना यूआरएल इस तरीके से और फेच हमें कुछ वैल्यू रिटर्न करेगा ये जो वैल्यू है दिस वैल्यू इज गोइंग टू बी अ प्रॉमिस और इस प्रॉमिस को हम चाहे तो प्रिंट करवा सकते हैं देखते हैं प्रॉमिस प्रिंट होगा तो हमें इवेंचर देखते हैं किस तरीके से पता चलेगा इसको सेव कर लेते हैं इतने कोड को एंड यहां पे आके इसे करते हैं रिफ्रेश रिफ्रेश किया तो क्या प्रिंट हुआ हमारे लिए प्रॉमिस प्रिंट हुआ प्रॉमिस में शुरुआत में जब प्रॉमिस प्रिंट हुआ तब तक पेंडिंग था पर डाटा आ गया तो मतलब प्रॉमिस हमारा फुलफिल हो गया और रिस्पांस में हमारे पास क्या आ रिस्पांस में हमारे पास ये सारी चीजें आई यानी हमारे पास रिस्पांस की कुछ बॉडी आई है कुछ हेडर्स आए हैं जिनके अंदर और इंफॉर्मेशन हमारे पास होगी स्टेटस आया है 200 स्टेटस 200 का मतलब होता है सक्सेसफुल रिक्वेस्ट यानी जो डाटा आप चाहते थे वो आपको रिटर्न करके मिल गया है स्टेटस टेक्स्ट में आया है ओके एंड इस यूआरएल पर बेसिकली हमने रिक्वेस्ट भेजी थी इसके अंदर भी हमारे पास रिस्पांस है यानी कुछ ठीक रिस्पांस हमारे पास प्रिंट होकर आया है अब अगर हमें पता है कि जब भी हम प्रॉमिस को यूज करते हैं हमारे पास मल्टीपल तरीके होते हैं प्रॉमिस से रिजल्ट निकालने के एक तरीका होता है प्रॉमिस चेनिंग जिसमें हम डॉट देन डॉट कैच इन सब को यूज कर रहे होते हैं पर उससे भी एक और बेटर तरीका हमने निकाला था व्च वाज यूजिंग अस सिंक अवेट तो हम अस सिंक अवेट से अपनी इस एपीआई कॉल को एग्जीक्यूट कर रहे होंगे अब अस सिंक अवेट को यूज करने के लिए हमें एक एसिंक्रोनस फंक्शन बनाना पड़ेगा इस फंक्शन को कह देते हैं गेट फैक्ट्स क्योंकि हम कैट फैक्ट्स गेट करने की कोशिश कर रहे हैं और इसी के अंदर हम अपना पूरा यह काम करने वाले हैं और बेसिकली क्योंकि हम यहां पर प्रॉमिस के साथ डील कर रहे हैं तो हमें सिंक बनाना पड़ेगा अपने इस फंक्शन को तो एरो फंक्शन को असं बनाने के लिए आगे हम अस सिंक लिख देते हैं और क्योंकि ये हमारा एसिंक्रोनस काम है किसी भी एपीआई को कॉल करके उससे डाटा मंगवाना एसिंक्रोनस काम है क्योंकि हो सकता है एपीआई कुछ टाइम ले डेटा लाने में तो इसके सामने हम लिख देंगे अवेट क्योंकि इस काम को टाइम लग सकता है और जब एक बार प्रॉमिस हमारा रिजॉल्व हो जाएगा तभी हम हम जो भी डाटा इसने रिटर्न किया होगा उस डाटा को प्रिंट करवा रहे होंगे अब यहां से जो भी चीज रिटर्न होती है उसे जनरली हम क्या कहते हैं प्रोग्रामिंग के अंदर उसे हम अपना रिस्पांस कहते हैं कि हमने एपीआई को कॉल लगाई और एपीआई ने हमें क्या भेजा एपीआई ने हमें हमारा रिस्पांस भेजा और उस रिस्पांस को हम प्रिंट करवा सकते हैं इनफैक्ट यहां कसोल डलॉग भी करवा सकते हैं गेटिंग डाटा डॉट डॉट डॉट इसको कर लेते हैं सेव रिफ्रेश अब हमें गेट फैक्ट्स को कॉल करना पड़ेगा जैसे ही कॉल करेंगे पहले आया है गेटिंग डाटा एंड एक चीज नोटिस की होगी आपने हमारे लिए प्रॉमिस प्रिंट हो गया पर ये फाइनल डाटा हमारे लिए प्रिंट होने में थोड़ा सा थोड़ा सा डिले आया यही डिले होता है जो एसिंक्रोनस प्रोग्रामिंग चल रही है उसको दिखाता है रिफ्रेश करेंगे लेट्स कॉल गेट फैक्ट अगेन थोड़ा सा डिले आया और फिर हमारे पास ये चीज आकर प्रिंट हुई तो इस चीज के अंदर ये हमारा प्रॉपर रिस्पांस है जो हमारी एपीआई से हमारे पास आया है एंड एक और इंटरेस्टिंग चीज आपने नोटिस की होगी कि इवन दो हम अपनी एपीआई को रिक्वेस्ट भेज रहे हैं पर डेटा हमारे पास जो रिटर्न होकर आ रहा है उसकी वजह से हमारा पेज रीलोड नहीं हो रहा जनरली नई जो इंफॉर्मेशन आती है पेज के ऊपर वो पेज के रीलोड होने के बाद आती है पर जब भी हम एपीआई कॉल्स कर रहे होते हैं इंटरनली तो हमारा पेज बिल्कुल भी रीलोड नहीं हो रहा एंड रन टाइम पे सारी की सारी इंफॉर्मेशन अपडेट हो रही है ये जो रिस्पांस है ये रन टाइम पे अपडेट हो रहा है तो कुछ-कुछ चीजों को समरा इज करते हैं बेसिक के लिए हमने ये देखा कि फेच एपीआई से कैसे हम रिक्वेस्ट भेज रहे हैं और हमें कुछ डटा रिसीव हो रहा है और इसके अंदर रिक्वेस्ट एंड रिस्पांस ऑब्जेक्ट्स को हम यूज़ करते हैं तो ये जो चीज यहां पर प्रिंट हो रही है ये जो रिस्पांस है जब हम इसे प्रिंट कर रहे हैं ये रिस्पांस एगजैक्टली क्या है दिस इज एन ऑब्जेक्ट क्योंकि इसके अंदर प्रोटोटाइप भी हमें दिखाई दे रहा है ये रिस्पांस प्रोटोटाइप के ऊपर बेस्ड एक ऑब्जेक्ट है जिसके अंदर काफी सारी डिफरेंट डिफरेंट वैल्यूज हैं हम चाहें तो अपनी ये जो रिस्पांस है इसका स्टेटस प्रिंट करवा सकते हैं इसको सेव कर लेते हैं रिफ्रेश करते हैं दोबारा से गेट फैक्ट्स को कॉल करेंगे इस बार सिर्फ रिस्पांस का स्टेटस प्रिंट होगा व्हिच इज 200 यानी सारी चीजें ओके चली गई इसी तरीके से हम दूसरी वैल्यूज को भी प्रिंट करवा सकते हैं सो रिस्पांस इज एन ऑब्जेक्ट तो हमारी जो एपीआई कॉल्स है वो रिक्वेस्ट रिस्पांस ऑब्जेक्ट के ऊपर वर्क करती हैं फेच मेथड इज यूज्ड टू फेच अ रिसोर्स और डेटा और फेच मेथड को हम इस तरीके से यूज़ कर रहे होते हैं अब जब भी फेच मेथड को हम यूज़ करते हैं और हम कोई भी ऑप्शंस उसे नहीं भेजते तो फेच मेथड एक पर्टिकुलर टाइप की रिक्वेस्ट क्रिएट करता है और इस रिक्वेस्ट को हम कहते हैं हमारी गेट रिक्वेस्ट हमारे पास रिक्वेस्ट की टर्म्स में जब भी हम नेटवर्क रिक्वेस्ट की बात करते हैं यानी इंटरनेट के ऊपर जो भी हम रिक्वेस्ट भेज रहे होते हैं उसके अंदर हमारे पास डिफरेंट डिफरेंट टाइप्स होते हैं गेट रिक्वेस्ट डिलीट रिक्वेस्ट पुट रिक्वेस्ट बहुत सारे डिफरेंट डिफरेंट टाइप्स होते हैं वो रिक्वेस्ट जो सिर्फ डाटा लाने का काम करती है जिनका काम होता है बस कुछ डटा हमारे पास कहीं से रिटर्न होके आ जाए किसी सर्वर से रिटर्न होके आ जाए किसी एपीआई से रिटर्न होकर आ जाए उन रिक्वेस्ट को हम गेट रिक्वेस्ट कहते हैं वैसे ही अब यहां पर जो हमने रिक्वेस्ट भेजी है दैट इज अ गेट रिक्वेस्ट बाय डिफॉल्ट या मैक्सिमम टाइम जब हम फेच एपीआई को यूज़ करते हैं हम गेट रिक्वेस्ट के लिए यूज़ कर रहे होते हैं अब यहां पर क्योंकि एपीआई को हमें कुछ डाटा नहीं भेजना हमें सिंपली क्या करना है सिर्फ डेटा रिसीव करना है इसीलिए ये रिक्वेस्ट हमारी गेट रिक्वेस्ट की कैटेगरी में आती है एंड एक और इंटरेस्टिंग चीज यहां पे नोट करने वाली है कि जब हम रिस्पांस को प्रिंट करवा रहे हैं इफ वी लुक एट दिस रिस्पांस दिस इज नॉट एन एक्यूरेट रिस्पांस हमारे पास रिस्पांस में हम एक्सपेक्ट क्या कर रहे थे हम एक्सपेक्ट कर रहे थे कि इस तरीके का कुछ हमारे पास आएगा यानी जब हमारा ब्राउजर रिक्वेस्ट भेज रहा है ब्राउजर भी गेट रिक्वेस्ट ही भेज रहा है यहां पर जब हम नॉर्मली कोई भी लिंक पेस्ट करते हैं ब्राउजर के अंदर तो बाय डिफॉल्ट गेट रिक्वेस्ट जाती है तो ब्राउजर जब गेट रिक्वेस्ट भेज रहा है उसके पास ये सब आ रहा है हां ब्राउजर के पास भी स्टेटस है ब्राउजर के पास भी दूसरी चीजें हैं पर ये ये प्रिंट करवा रहा है पर हमें जो रिस्पांस मिल रहा है दैट इज समथिंग लाइक दिस अब इसमें से कैट फैक्ट्स यानी जो डेटा हमें एक्चुअली चाहिए था वो हमें दिखाई नहीं दे रहा तो बेसिकली ये डेटा इसलिए नहीं दिखाई दे रहा क्योंकि ये डटा एक अलग फॉर्मेट में है जिसको अभी हम रीड नहीं कर पा रहे अब इस चीज को समझने के लिए हमें कुछ टर्म्स को समझना पड़ेगा सबसे पहली टर्म जिसको हम समझने वाले हैं आई अंडरस्टैंड कि ये टर्म्स एजेक्स हो गया जेसन हो गया ये टर्म्स बहुत डिफिकल्ट लगती हैं शुरुआत में देखने में पर इनके मतलब बहुत आसान है एक बार हमने देख लिया कि हां इस टर्म का ये मतलब है तो बहुत इजी होगा हमारे लिए रिमेंबर करना कुछ टर्म्स को हम समझेंगे और फिर जानेंगे कि कि हम जो रिस्पांस प्रिंट करवा रहे हैं वो सही क्यों नहीं प्रिंट हो कर आ रहा है सबसे पहली टर्म है हमारे पास एजेक्स एजेक्स का मतलब होता है एजेक्स इज एसिंक्रोनस जावास्क्रिप्ट एंड एक्सएमए पहले जमाने में यानी पहले जब हमारे पास मॉडर्न जावास्क्रिप्ट नहीं होती थी काफी सारे कांसेप्ट नहीं होते थे तो पहले नेटवर्क रिक्वेस्ट कैसे जाती थी नेटवर्क रिक्वेस्ट यानी जैसे अभी हमने अपनी एपीआई को रिक्वेस्ट भेजी है पहले हमारे पास अगर कोई डाटा आना होता था तो वो एक्सएमएल फाइल्स की फॉर्म में हमारे पास आ रहा होता था यानी पहले अगर हम किसी एपीआई को रिक्वेस्ट भेजते तो जो डेटा का फॉर्मेट होता वो एक्सएमएल होता था पर आज की डेट में एक्सएमएल बहुत कम होता है डेटा का फॉर्मेट जनरली जो हमारा डाटा आता है वो जेसन फॉर्मेट में आता है अब यहां डाटा फॉर्मेट कहने का क्या मतलब है जैसे फॉर एग्जांपल आपका एक दोस्त है आप अपने दोस्त को कुछ भी मनी सेंड करना चाहते हो तो मनी को आप डिफरेंट डिफरेंट फॉर्मेट के अंदर सेंड कर सकते हो आप चाहो तो अपने दोस्त को कैश भी दे सकते हो उसे आप चाहो तो डायरेक्टली नेट बैंकिंग से पैसे ट्रांसफर कर सकते हैं नहीं तो हम चाहे तो यूपीआई भी कर सकते हैं तो एट दी एंड जा तो वही डेटा रहा है जा तो मनी ही रहा है बट वो डिफरेंट डिफरेंट फॉर्मेट के अंदर जा रहा है तो फॉर्मैट्स अलग हो गए तो उस डाटा के साथ डील करने की टेक्नीक भी अलग हो जाए जाएगी अगर डायरेक्टली कैश दिया है तो उसे वो डायरेक्टली यूज़ कर पाएंगे अगर यूपीआई दिया है और दोस्त को कैश चाहिए तो उन्हें जाकर कहीं से एटीएम से उस चीज को विड्रॉ करना पड़ेगा तो इस तरीके से डेटा का फॉर्मेट चेंज हो जाता है पर एट द एंड डेटा वही जाता है पहले डेटा जाता था एक्सएमएल फॉर्मेट में आजकल डेटा जाता है जेसन फॉर्मेट में अब जेसन फॉर्मेट का क्या मतलब है जेसन इज जावास्क्रिप्ट ऑब्जेक्ट नोटेशन यानी जो डाटा जा रहा होगा वो जावास्क्रिप्ट ऑब्जेक्ट्स जैसा हमें दिखाई देगा इसीलिए इसका नाम जेसन होता है तो हमारे कोड में ये जो रिस्पांस हमारे पास आ रहा है यह किस फॉर्मेट में है यह जेसन फॉर्मेट में है जेसन फॉर्मेट जावास्क्रिप्ट ऑब्जेक्ट जैसा फॉर्मेट होता है यानी ये जो चीज यहां पे प्रिंट होके आ रही है ये हमारी जावास्क्रिप्ट ऑब्जेक्ट जैसा फॉर्मेट है बट दिस इज नॉट जावास्क्रिप्ट ऑब्जेक्ट बस ये उस जैसा दिखाई देता है अब एज अ जावास्क्रिप्ट डेवलपर क्योंकि हम जावास्क्रिप्ट के साथ ऑलरेडी डील कर रहे थे हमें ऑलरेडी जावास्क्रिप्ट आती है तो हमारे लिए जेसन डाटा को पास करना उसके साथ डील करना काफी आसान होता है एज कंपेयर टू एक्सएमएल डाटा नहीं तो हमें एक्सएमएल भी अलग से जाके सीखनी पड़ती पर आज की डेट में सिर्फ जेसन के अंदर ही होता है तो एक्सएमएल को हमें सीखने की जरूरत नहीं पड़ती तो आजकल जो मैक्सिमम एपीआई हम यूज कर रहे होते हैं वो क्योंकि जेसन फॉर्मेट के अंदर डेटा रिटर्न करती हैं तो उन एपीआई को हम एजज भी कह सकते हैं तो एजज कहने का बेसिक मतलब होगा एसिंक्रोनस जावास्क्रिप्ट एंड जेसन क्योंकि एक्सएमएल को जेसन ने रिप्लेस कर लिया है बट एजज क्योंकि सुनने में बहुत वियर्ड लगता है तो इट इज नॉट रियली अ वेरी पॉपुलर टर्म हम आज भी जो हमारा एक्सचेंज होता है नेटवर्क रिक्वेस्ट जाती है रिस्पांस आता है उसे आज भी हम एजेक्स ही कहते हैं इवन दो एक्सएमएल की जगह हमारे पास जेसन आ गया है पर अगर आप वर्ड सुनते हैं एजेक्स तो उसका मतलब यही है कि हम एपीआई कॉल्स जो हमने करके देखा अभी फेच एपीआई से इसी की हम बात कर रहे हैं हम नेटवर्क पे कुछ रिक्वेस्ट भेज रहे हैं और हमारे पास कहीं से कुछ रिस्पांस आ रहा है एंड दैट इज यूजिंग एजेक्स अब हमारा एपीआई को कॉल करने का प्रोसेस कैसे वर्क करता है सबसे पहले हमारी एपीआई को जैसे ही हमने रिक्वेस्ट भेजी हमारे पास कुछ रिस्पांस आता है और ये जो रिस्पांस होता है ये जेसन फॉर्मेट के अंदर होता है हमें इसे जेसन फॉर्मेट से जावास्क्रिप्ट ऑब्जेक्ट के अंदर कन्वर्ट करना पड़ता है तो ये हमारा सेकंड स्टेप होता है जब हम इस रिस्पांस को एक यूज बल फॉर्मेट के अंदर कन्वर्ट करेंगे अब वो कन्वर्ट करने के लिए हम एक स्पेशल मेथड यूज़ करते हैं व्हिच इज़ कॉल्ड जेसन मेथड अब ये जो जेसन मेथड है ये भी एक एसिंक्रोनस मेथड होता है जैसे फेच एपीआई का जब हम फेच मेथड यूज़ करें फेच मेथड एसिंक्रोनस होता है प्रॉमिस रिटर्न करता है वैसे ही जेसन मेथड भी एसिंक्रोनस मेथड होता है प्रॉमिस रिटर्न करता है तो इट रिटर्न्स अ सेकंड प्रॉमिस ऑलरेडी रिस्पांस आ गया फेच से फेच फेच ने फर्स्ट प्रॉमिस रिटर्न किया डॉट जेसन क्या करेगा सेकंड प्रॉमिस रिटर्न करेगा दैट रिजॉल्व विद द रिजल्ट ऑफ़ पासिंग द रिस्पांस बॉडी टेक्स्ट एज जेसन यानी हम इस जेसन मेथड को इनपुट में जेसन देते हैं और ये आउटपुट में हमें जावास्क्रिप्ट ऑब्जेक्ट यानी यूज बल डाटा रिटर्न करके देता है तो जेसन मेथड से हम अपना एक्चुअल यूज बल डाटा निकालते हैं रिस्पांस ऑब्जेक्ट के थ्रू तो इसे यूज करने के लिए व्हाट वी कैन डू इज हम अपने जो भी हमारा रिस्पांस होता है उसके ऊपर डॉट जेसन को कॉल लगाते हैं और क्योंकि डॉट जेसन हमारे पास एसिंक्रोनस है तो इसे हम क्या करेंगे इसे भी हम अवेट करेंगे और इससे जो भी डाटा रिटर्न होकर आएगा उसे हम यहां पर सेव करवा लेंगे और अब फाइनली हम कसोल डलॉग करके प्रिंट करवा सकते हैं अपने डेटा को और ये जो डाटा होगा ये हमारा यूज बल डाटा होगा तो . जन जसन क्या करता है सेकंड प्रॉमिस रिटर्न करता है इसीलिए हम यहां पे अवेट को यूज करते हैं इसको सेव कर देते हैं रिफ्रेश करते हैं जैसे ही गेट फैक्ट्स को कॉल लगाएंगे सबसे पहले हमारे पास फर्स्ट डटा आया यह फर्स्ट डटा क्या है यह हमारा रिस्पांस है इस रिस्पांस से हमने यूज बल डाटा निकाला यह हमारा यूज बल डाटा यूब डेटा में क्या है एक एरे है जिसका साइज है इक्वल टू 5 यानी लेंथ है इक्वल टू 5 और इसके अंदर पर इंडेक्स जाके हम कुछ-कुछ डाटा जो है उसको रिट्रीव कर सकते हैं जैसे अगर हम डाटा ऑफ रो को प्रिंट करवाना चाहे ओके उसके लिए हमें इसे डाटा को ग्लोबल बनाना पड़ेगा तो व्हाट वी कै डू इज़ यहीं से हम अपने डटा ऑफ़ ज़ीरो को प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया लेट्स कॉल गेट फैक्ट्स गेट फैक्ट से ये हमारा डेटा ऑफ़ ज़ीरो आ गया अब डाटा ऑफ़ ज़ीरो के अंदर बहुत सारी इंफॉर्मेशन है हमें य टेक्स्ट चाहिए य टेक्स्ट क्या है यह है कैट से रिलेटेड फैक्ट तो डॉट टेक्स्ट इफ आई डू रिफ्रेश किया दोबारा से गेट फैक्ट्स ओनिंग अ कैट कैन रिड्यूस द रिस्क ऑफ़ स्ट्रोक तो ये फैक्ट आ गया व्हिच इज़ रिलेटेड टू कैट्स दिस वाज द एक्चुअल डटा दैट वी रिक्वायर्ड फ्रॉम दी एपीआई अब हमने तो एपीआई के अंदर जाके कैट रिलेटेड डॉग रिलेटेड कोई फैक्ट स्टोर नहीं किए ऐसे ही जोक से रिलेटेड बहुत सारी एपीआई होती हैं जो हमें जोक रिटर्न करती है रैंडम जोक हम जनरेट करवा सकते हैं तो इस तरीके का डाटा है जो हमारी एपीआई से रिटर्न होकर आता है और अब इस डेटा को हम यूज कर सकते हैं हम चाहे तो इसे अपने एचटीएमएल पेज के अंदर प्रिंट करवा सकते हैं फॉर एग्जांपल आई कैन कनेक्ट इट टू सम रैंडम पैराग्राफ इसको आईडी दे देते हैं क्लास की क्लास नहीं इसको फैक्ट की हम आईडी दे देते हैं एंड यहां पर हम लिख सकते हैं कॉन्स्ट फैक्ट पैरा इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर और इसके अंदर हम फैक्ट को यूज कर लेंगे और जैसे ही हमारे पास ये टेक्स्ट आ जाएगा हम क्या करने वाले हैं फैक्ट पैरा के अंदर डॉट इनर टेक्स्ट इनर टेक्स्ट को सेट कर देंगे टू दिस वैल्यू सेव किया रिफ्रेश किया जैसे ही गेट फैक्ट्स को कॉल लगाएंगे तो हमारे पास क्या आ गया कैट रिलेटेड एक रैंडम फैक्ट हमारे पास प्रिंट होकर आ गया अब हम चाहे तो एक बटन भी यहां पर क्रिएट कर सकते हैं जैसे फॉर एग्जांपल इफ आई क्रिएट अ बट बटन एक बटन क्रिएट कर देते हैं एंड इसे आईडी दे देते हैं लेट्स गिव इट एन आईडी ऑफ बटन गेट अ फैक्ट तो इस बटन को यहां पर एक्सेस कर सकते हैं कंस्ट सेव कर लेते हैं रिफ्रेश किया गेट फैक्ट्स को हमें ऊपर ऐड करना पड़ेगा बेसिकली तो ये जो इवेंट लिसन है इसे नीचे ऐड कर देते हैं रिफ्रेश किया अब अपने एटीएमएल पर आते हैं जैसे ही इस बटन को हम क्लिक करेंगे वैसे ही इंटरनली गेट फैक्ट हो रहा है वेट कर रहा है वो फैक्ट का और एकदम से जैसे ही एपीआई कॉल सक्सेसफुल हो गई हमारे पेज के ऊपर हमारे पास ये इंफॉर्मेशन प्रिंट होकर आ गई हम चाहते तो डटा ऑफ वन को भी प्रिंट करवा सकते थे क्योंकि हमारे पास पांच फैक्ट्स आ रहे हैं कैट रिलेटेड रिफ्रेश किया गेट फैक्ट को कॉल लगाया वेट किया एंड फिर हमारे पास कैट से रिलेटेड एक और रैंडम फैक्ट आ गया हम चाहे तो डटा ऑफ टू भी प्रिंट करवा सकते हैं रिफ्रेश किया गेट फैक्ट को क्लिक किया जैसे ही आया हमारे पास फैक्ट तो वो फैक्ट हमारे स्क्रीन के ऊपर प्रिंट होकर आ गया तो इस तरीके से एपीआई को हम कॉल करते हैं यूजिंग फेच एपीआई फेच एपीआई क्या करती है हमारे लिए कुछ डाटा लेकर आती है अब ये डटा रीडेबल फॉर्मेट में नहीं है इसको रीडेबल करने के लिए डॉट जेसन मेथड को हम कॉल लगाते हैं वो इसे रीडेबल बनाता है जिसको हम यूज़ कर सकते हैं यूज़ करने का मतलब है अपने किसी एटीएमएल एलिमेंट के ऊपर उसे हम पेस्ट कर सकते हैं यानी इनर टेक्स्ट के अंदर इनर एटीएमएल के अंदर दिखा सकते हैं वही सेम काम हमने कर लिया तो इस तरीके से हमारी एपीआई कॉल्स काम करती है जावास्क्रिप्ट के अंदर अब ये जो सारा काम जो हमने असं अवेट से किया इसी सारे काम को हम प्रॉमिस चेनिंग से भी कर सकते थे यानी सिंपली व्ट वी कुड हैव डन इज यहां पे एक और फंक्शन बना लेते हैं लेट्स मेक गेट फैक्ट्स या इसे फंक्शन बना देते हैं गेट फैक्ट्स और इस वाले को कॉमेंट आउट कर देते हैं यही सेम काम प्रॉमिस चेंज से करते तो क्या होता सबसे पहले हमें फेच एपीआई को कॉल करनी होती यूजिंग यूआरएल अब ये फच एपीआई हमें कुछ रिस्पांस रिटर्न करके देती तो डॉट देन इसके ऊपर हम लगा रहे होते और डॉट देन में हमारे पास कुछ रिजल्ट आता लेट्स कॉल इट रिजल्ट और वी कैन कॉल इट रिस्पांस ये जो हमारे पास रिस्पांस आता अब इस रिस्पांस के ऊपर हमें क्या करना पड़ता इस रिस्पांस को हमें दोबारा से पार्स करना पड़ता पार्स करने का मतलब है डेटा का फॉर्मेट चेंज करना जैसे यूपीआई से कैश में कन्वर्ट कर सकते हैं कैश से डेबिट के अंदर कन्वर्ट कर सकते हैं वैसे ही हम यहां डटा का फॉर्मेट चेंज करते हैं ये जो हमारा रिस्पांस है क्योंकि ये जेसन फॉर्मेट में है तो ये जो डॉट देन है चेनिंग के लिए ये रिटर्न करेगा रेसड जसन को और जैसे ही ड जसन रिटर्न होगा यहां पे एक और डॉट देन लगाया जाएगा जिसके अंदर फाइनल डाटा हमारे पास रिटर्न होकर आएगा और फिर हम क्या करेंगे कसोल डलॉग कर देंगे अपने डाटा को इसको एक बार कर लेते हैं सेव तो ये क्या हो गई ये प्रॉमिस चेनिंग हो गई या कसोल डलॉग करने के साथ-साथ हम ये चीज जो है इसे प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया गेट फैक्ट किया गेट फैक किया तो हमारे पास ये चीज प्रिंट होकर आ गई यानी काम वही सेम हो रहा है इस तरीके से भी काम किया जा सकता है बट यहां पे आप आपको खुद ही समझ में आ गया होगा कि ये कोड जो हमने लिखा था एज कंपेयर टू दिस कोड आवर प्रीवियस कोड वाज मच सिंपलर एंड मच इजियर टू रीड काफी जगह आपको देखने को मिलेगा कि फेच एपीआई के अंदर या डिफरेंट डिफरेंट जगह जहां से भी प्रॉमिस रिटर्न हो रहा है वहां पे इस तरीके से डॉट डन करके चेनिंग ही होगी उसमें एज सच कोई प्रॉब्लम नहीं है एस सच कोई गलत बात नहीं है ये भी कोड बिल्कुल सही रन करेगा हमारे लिए बट एक बेटर तरीका होगा अपने कोड को अस सिंक अवेट को यूज़ करके लिखने का क्योंकि दिस इज जस्ट सिंपलर टू अंडरस्टैंड हमें पता है यहां अवेट हो रही है चीजें यहां भी अवेट हो रही हैं चीजें तो ये ज्यादा रीडेबल कोड हमारे लिए होता है तो इसीलिए हमने पहले प्रॉमिस चेंज पढ़ी थी फिर हमने असं अवेट को पढ़ा था तो ये तो हो गया एवरीथिंग रिलेटेड टू एपीआई कॉल्स अब एपीआई कॉल्स के अंदर काफी सारी चीजें हैं जिनको हम जाके और डिटेल में पढ़ सकते हैं इनमें से एक टॉपिक हमारे पास होता है रिगार्डिंग रिक्वेस्ट एंड रिस्पांस सबसे पहली चीज जो हमें पता होनी चाहिए जब भी कोई एपीआई कॉल जाती है जब भी हम किसी सर्वर को रिक्वेस्ट भेजते हैं कि रिक्वेस्ट जो है उसके अंदर कुछ-कुछ एचटीटीपी वर्ब्स होते हैं आई होप एचटीटीपी की फुल फॉर्म बचपन से हम सबने पढ़ी होती है कंप्यूटर साइंस के अंदर स्कूल के अंदर कंप्यूटर साइंस नाम का सब्जेक्ट होता है एचटीटीपी स्टैंड्स फॉर हाइपर टेक्स्ट ट्रांसफर प्रोटोकॉल प्रोटोकॉल प्रोटोकॉल कहने का मतलब है कुछ रूल्स यानी इंटरनेट के ऊपर जो हम रिक्वेस्ट भेज रहे होते हैं वो जनरली हम एचटीटीपी पर भेजते हैं तो ये कुछ रूल्स होते हैं रिक्वेस्ट रिस्पांस भेजने के अब क्या-क्या रूल्स होते हैं इंटरनली उसमें हमें नहीं जाना है बेसिकली एचटीटीपी के अंदर वर्ब्स नाम की एक चीज होती है जो हमें बताती है कि हम किस तरीके की रिक्वेस्ट भेज रहे हैं वी कैन गो टू दिस एमडीएन पेज एंड रीड अबाउट मोर एचटीटीपी वर्ब्स यहां पर अगर हम जाएंगे तो एचटीटीपी रिक्वेस्ट के अंदर कुछ मेथड्स होते हैं या इनको हम कुछ वर्ब्स बोल सकते हैं मतलब किस तरीके की रिक्वेस्ट हमने भेजी इसमें से सबसे पॉपुलर जो हम जनरली फच एपीआई में यूज़ करते हैं हमारी गेट रिक्वेस्ट होती है गेट रिक्वेस्ट का काम होता है टू गेट सम डेटा यानी इट शुड ओनली बी यूज्ड टू रिट्रीव सम डेटा कुछ डेटा अगर हमें कहीं से लेकर आना है उसके लिए हम गेट रिक्वेस्ट भेजते हैं इसके अलावा हमारे पास पोस्ट रिक्वेस्ट भी होती है पोस्ट रिक्वेस्ट बेसिकली हम भेजते हैं टू सेंड सम डाटा हमें जब कुछ डेटा स्पेसिफिक डाटा सेंड करना होता है उसके पह पोस्ट रिक्वेस्ट अगर हमें कुछ डेटा डिलीट करना है तो उसके लिए हम डिलीट रिक्वेस्ट भेजते हैं फॉर एग्जांपल आप अपने अकाउंट को डिलीट करना चाहते हैं डीएक्टिवेट करना चाहते हैं तो वहां पर जो डिलीट बटन होगा हमारी ऐप के अंदर जो डिलीट बटन हो है instagram.in के ऊपर जाके हम अपना यूज़र नेम अपडेट करना चाहते हैं तो उसके लिए जनरली हो सकता है पैच रिक्वेस्ट जाए पैच रिक्वेस्ट यानी ऑलरेडी हमारा पूरा डाटा स्टोर्ड हो गया तो इस तरीके से बहुत सारी डिफरेंट डिफरेंट रिक्वेस्ट होती है हमारे पास बट हमारा जो मेन फोकस रहेगा वो हमारी गेट रिक्वेस्ट पर रहेगा क्योंकि जनरली फेच एपीआई इस को हम अपनी गेट रिक्वेस्ट के लिए यूज़ करते हैं सेकंड चीज जिसका हमें पता होनी चाहिए वो है रिस्पांस स्टेटस कोड एक चीज हम नोटिस करेंगे यहां पे जब हमने एपीआई कॉल की कि एपीआई के अंदर इस प्रॉमिस चेनिंग को हटा देते हैं सेव एंड यहां पर जब हमारे पास रिस्पांस आ रहा है तो रिस्पांस के अंदर वी हैव समथिंग कॉल्ड स्टेटस स्टेटस के अंदर हमने बात की कि 200 स्टेटस का मतलब होता है एवरीथिंग वाज ओके अगर कुछ एरर आ जाता है तो हो सकता है कुछ 500 स्टेटस हमारे पास आ जाए 404 आ जाए इस तरीके के बहुत सारे डिफरेंट स्टेटस होते हैं अब ये स्टेटस कोड का क्या मतलब होता है उसके लिए हम एमडीएन के इस पेज पर जा सकते हैं तो एचटीटीपी के अंदर बहुत सारे रिस्पांस स्टेटस कोड्स होते हैं जो रिस्पांस के अंदर बताते हैं कि रिक्वेस्ट का क्या रिस्पांस रहा जनरली 200 का मतलब होता है सक्सेसफुल रिस्पांस यानी सारी चीजें सही वर्क कर गई अगर क्लाइंट साइड पे कुछ एरर आता है यानी अगर हमने गलत तरीके से रिक्वेस्ट भेजी या हम जिस पेज को जिस एपीआई को रिक्वेस्ट भेज रहे हैं वो एपीआई एजिस्ट ही नहीं करती तो हमारे पास 404 एरर आएगा फॉर एग्जांपल यहां यह लिंक इस लिंक के ऊपर हम रिक्वेस्ट भेज रहे थे यहां मैं फैक्ट्स स् श्रद्धा कर दूं यह कोई वैलिड लिंक नहीं है ऐसा कोई लिंक उन्होंने नहीं बनाया हुआ तो अब रिफ्रेश करके व्हेन आई विल क्लिक ऑन गेट फैक्ट्स तो यहां पे एरर आएगी क्या एरर आ रहा है विद अ स्टेटस कोड ऑफ 400 यहां देखेंगे हम स्टेटस में आ रहा है 400 400 स्टेटस कोड कहता है बैड रिक्वेस्ट यानी हमने जो रिक्वेस्ट करने की कोशिश की वो गलत रिक्वेस्ट है वो हमें नहीं करनी चाहिए थी इसी तरीके से आपने एक फेमस कोड सुना होगा 404 404 का मतलब होता है पेज नॉट फाउंड और अगर मान लो एपीआई के अंदर ही कुछ एरर आ रहा है हमने तो सब कुछ सही किया पर एपीआई में ही कुछ एरर आ गया फेल हो गई सर्वर फेल हो गया तो उस टाइम पे 500 रिलेटेड एरर्स आते हैं जो सर्वर एरर के लिए एरर्स होते हैं जैसे अगर इन के ऊपर डिटेल में इन्हें पढ़ सकते हैं कोई एज सच बहुत मुश्किल चीज नहीं है बहुत आसान चीज है पढ़ने के लिए एंड इन फैक्ट आई थिंक यू शुड गो एंड रीड इट एक और चीज इंपॉर्टेंट होती है कि जब भी हम रिक्वेस्ट या रिस्पांस की बात करते हैं जब भी हम कोई रिक्वेस्ट भेजते हैं या हमारे पास कोई रिस्पांस आ रहा होता है तो उसके अंदर एक हेडर्स नाम की चीज होती है हेडर्स के अंदर हम अपनी एक्स्ट्रा इंफॉर्मेशन भेजते हैं तो एचटीटीपी रिस्पांस हेडर्स के अंदर यानी जब हमारे पास रिस्पांस आता है रिस्पांस का हेडर होता है या हम कोई रिक्वेस्ट भेजते हैं रिक्वेस्ट का भी हेडर होता है तो रिस्पांस में जब हेडर आ रहा है उसके अंदर हमारा क्या कंटेंट का टाइप है क्या स्टेटस कोड है इस तर तरीके से अलग-अलग इंफॉर्मेशन स्टोर होती है जैसे फॉर एग्जांपल हमने यहां पर एक बैड रिक्वेस्ट क्रिएट की तो यहां पर हेडर्स के अंदर कई सारी डिफरेंट डिफरेंट इंफॉर्मेशन होगी इसके अलावा अगर हम सही रिक्वेस्ट भी भेजते हैं लेट्स रिमूव दिस सेव रिफ्रेश गेट अ फैक्ट तो ये हमारे हेडर्स होते हैं जिनके अंदर एडिशनल इंफॉर्मेशन होती है तो जब भी आप हेडर वर्ड सुनो एपीआई के अंदर उसका मतलब होता है कुछ एडिशनल इंफॉर्मेशन है जो शायद रिस्पांस के साथ आ रही है जो शायद हम रिक्वेस्ट के साथ भेज रहे हैं तो दिस वाज ऑल अबाउट द बेसिक्स ऑफ एपीआई कॉलिंग इसमें एक छोटा सा होमवर्क प्रॉब्लम है टास्क है जो मैं आपको देना चाहूंगी व्हिच इज टू लर्न हाउ टू सेंड अ पोस्ट रिक्वेस्ट यूजिंग फेच एपीआई फेच एपीआई ही आपको यूज़ करनी पड़ेगी मैं बता भी देती हूं थोड़ा सा फच एपीआई के अंदर हम अपना यूआरएल उसी तरीके से लिखेंगे प्लस हम कुछ एडिशनल ऑप्शंस को यूज़ कर रहे होंगे तो आप चाहो तो इस होमवर्क टास्क को सॉल्व करने के लिए बेसिकली वीी हैव टू सर्च फॉर फच एपीआई एमडीएन फेच एपीआई एमडीएन पर हम जाएंगे और यहां पर मेथड्स के अंदर हम फेच के अंदर जाएंगे फेच के अंदर जाएंगे तो यहां पर ऑप्शंस नाम की चीज है ऑप्शंस के अंदर हमारे पास मेथड नाम की चीज होती है तो ऑप्शन के अंदर जब हम रिक्वेस्ट के मेथड को पोस्ट में चेंज कर देते हैं तो हमारे पास क्या होता है पोस्ट रिक्वेस्ट चली जाती है तो इस चैप्टर के अंदर जब हम अपना प्रोजेक्ट एक बार बिल्ड कर लेंगे तो उसके बाद हमें जाके अपने इस होमवर्क टास्क को कंप्लीट करना है जिसमें हम आइडेंटिफिकेशन कन्वर्टर अब एक करेंसी कन्वर्टर क्या होता है जैसे फॉर एग्जांपल हमें जानना है कि $ की रुपीज में क्या वैल्यू होगी तो उसके लिए हमें एक्सचेंज रेट पता होना चाहिए डॉलर यानी यूएसडी एंड इंडियन रुपी यानी आईआर का तो इसी तरीके से एक करेंसी से दूसरी करेंसी में अगर हम कन्वर्ट करते हैं तो कितनी वैल्यू निकल कर आएगी उस चीज को उस एक ऐप को हम बिल्ड करने वाले हैं यूजिंग एटीएल सीएसएस एंड जावास्क्रिप्ट अब इसको यूज़ करने के लिए हम अपनी एक्सचेंज रेट की कई सारी डिफरेंट एपीआई अवेलेबल हैं ऑनलाइन उनमें से एक फ्री एपीआई को यूज़ कर रहे होंगे तो सबसे पहले हम अपने html5 के अंदर एंड इस फाइल को हमने टाइटल दिया है करेंसी कन्वर्टर एंड इसके साथ हमने लिंक कर रखी है एक style.css फाइल अगर हम अपने ब्राउजर के अंदर जाएंगे तो हमारा पेज अभी कुछ इस तरीके से हमें दिखाई देगा जिसमें हमने अपनी कंसोल विंडो को ऑलरेडी ओपन कर रखा है अब शुरुआत करते हैं सबसे पहले बेसिक एचटीएमएल कोड के साथ इसमें सबसे पहले तो हम एक डिव अपने लिए क्रिएट करेंगे जिसको हम नाम देने वाले हैं कंटेनर कंटेनर के ऊपर ही हमारे पास एक h2 हेडिंग हम रख सकते हैं इसे हम कह देंगे करेंसी कन्वर्टर सेव एंड रिफ्रेश सो दिस इज बेसिकली आवर करेंसी कन्वर्टर अभी हमने थोड़ा सा जूम इन कर रखा है तो एक्चुअल साइज जो होगा वो कुछ इस साइज का हमारे पास कन्वर्टर निकल कर आएगा अब करेंसी कन्वर्टर के लिए एक फॉर्म है जिसे हम क्रिएट करने वाले हैं फॉर्म के अंदर सबसे पहले एक डिव क्रिएट करते हैं जिसे हम कहेंगे अपनी अमाउंट वाला डिव अमाउंट डिव के अंदर हम अपनी कुछ अमाउंट एंटर करवाएंगे यूजर से तो हम यहां लिख सकते हैं एंटर अमाउंट एंड इसके अंदर हमारे पास एक इनपुट बॉक्स होगा जिसकी वैल्यू शुरुआत में हम रख सकते हैं एज 100 इसके टाइप में हम ऐड करने वाले हैं टेक्स्ट रिफ्रेश कर दिया तो यहां पर हम चाहे तो अपनी वैल्यू को 500 भी रख सकते हैं बेसिकली अगर मुझे 000 को कन्वर्ट करना है टू इंडियन रुपी तो उसके लिए क्या वैल्यू होगी वह हम यहां पर आकर टाइप कर रहे होंगे यह हो गया हमारा अमाउंट का डिव इसके अलावा हम अपने लिए कुछ ड्रॉप डाउंस क्रिएट कर सकते हैं तो लेट्स क्रिएट अ डिव कॉल्ड ड्रॉप डाउन ड्रॉप डाउन के अंदर हमारे पास दो ड्रॉप डाउंस होंगे एक जिसके अंदर हम फ्रॉम वाली करेंसी लिखेंगे एक जिसके अंदर हम टू वाली करेंसी लिखेंगे फॉर एग्जांपल हम डॉलर से इंडियन रुपी के अंदर कन्वर्ट कर रहे हैं तो फ्रॉम में डॉलर आ जाए यानी यूएसडी और टू में इंडियन रुपी आ जाएगा यानी आईआर तो इस तरीके से ड्रॉप डाउन में हमारे पास दो ड्रॉप डाउन होंगे एक होगा हमारा फ्रॉम वाला ड्रॉप डाउन एंड एक होगा हमारा टू वाला ड्रॉप डाउन फर्स्ट ड्रॉप डाउन को सबसे पहले क्रिएट करते हैं इसे एक पैराग्राफ दे देते हैं फ्रॉम साथ में एक और डिव हम क्रिएट करने वाले हैं वी विल कॉल इट सिलेक्ट कंटेनर क्योंकि इसके अंदर ड्रॉप डाउन है तो ड्रॉप डाउन को क्रिएट करने के लिए एटीएमएल के अंदर हम सिलेक्ट एलिमेंट को यूज करते हैं तो यहां पर हमारे पास एक सिलेक्ट एलिमेंट होगा सिलेक्ट का नेम हम अपने लिए रख सकते हैं फ्रॉम एंड सिलेक्ट के अंदर हम कई सारे डिफरेंट ऑप्शंस हैं जिनको क्रिएट कर सकते हैं फॉर एग्जांपल हमारा फर्स्ट ऑप्शन हो सकता है या इसे कह देते हैं यूएसडी सेकंड ऑप्शन हमारे लिए हो सकता है आई एनआर तो यहां वैल्यू हम रख देंगे एज आईआर यहां पर भी अपनी वैल्यू को हम रख देंगे एस यूएसडी सेव किया रिफ्रेश किया तो इस तरीके से फ्रॉम एंड फिर हमारे पास एक ड्रॉप डाउन आ जाएगा जिसमें से हम अपने ऑप्शंस को सेलेक्ट कर सकते हैं हम चाहे तो दो और ऑप्शंस यहां पर ऐड कर सकते हैं एक हम यूरो के लिए ऐड कर देते हैं ईयू आर एक हम ए यूडी के लिए ऐड कर सकते हैं यूडी इज बेसिकली ऑस्ट्रेलियन डॉलर साथ के साथ जो भी कंट्री होगी यानी जो भी करेंसी हम सिलेक्ट करेंगे हम उस करेंसी की इमेज को भी दिखाना चाहते हैं तो उसके लिए हम अपना इमेज टैग यूज कर सकते हैं जिसके अंदर हम कुछ लिंक ऐड करेंगे अब हमारे पास बहुत सारी कंट्रीज अवेलेबल होंगी अभी तो हमने सिर्फ चार कंट्रीज के यहां पे एग्जांपल दिखाए हैं अपने ड्रॉप डाउन के अंदर पर एक्चुअली आपके पास ये एक फाइल होगी जो डाउनलोड करने के लिए नीचे आपको लिंक दिया होगा डिस्क्रिप्शन बॉक्स के अंदर हमारे पास पूरी कंट्रीज की एक लिस्ट होगी इस लिस्ट के अंदर हमारे पास हर कंट्री की करेंसी का कोड है एंड हर कंट्री का कोड है तो हमारे पास बहुत सारी डिफरेंट डिफरेंट कंट्रीज हैं इसके अंदर टोटल 160 कंट्रीज की इंफॉर्मेशन है 100 एंड आई थिंक 59 कंट्रीज की इंफॉर्मेशन है जिसको यूज करके हम अपने करेंसी कन्वर्टर को क्रिएट करने वाले हैं अब हर कंट्री का अलग एक फ्लैग होगा तो उसके लिए जरूरी तो नहीं है कि हम हर एक कंट्री के फ्लैग की इमेज डाउनलोड करके रखें तो वो डाटा देने के लिए भी हमारे पास डिफरेंट डिफरेंट एपीआई होती हैं जिनको हम यूज कर सकते हैं तो फ्लैग्स के लिए वी विल यूज दिस पिक र लिंक फ्लग ap.com जिसमें हमारे पास य लिंक होता है जिस लिंक को यूज करके हम किसी भी कंट्री का फ्लैग लेकर आ सकते हैं तो बेसिकली सोर्स में इमेज की सोर्स में हम इस लिंक को यूज करेंगे यह हमारे पास लिंक होगा इसको एंटर किया तो हमारे पास ये इमेज आ जाएगी चच इज सम कंट्रीज फ्लैग अब यहीं पर अगर हम आई एन लिख दे आई यानी इंडिया का फ्लैग तो हमारे पास इंडिया का फ्लैग आ जाएगा अगर हम यहां पर यूएस लिख द आई ए की जगह तो हमारे पास यूएस का फ्लैग आ जाएगा इफ आई राइट एन प प्रोबेबली तो हमारे पास नेपाल का फ्लैग आ जाएगा तो इस तरीके से बहुत सारे डिफरेंट डिफरेंट कंट्रीज के फ्लैग हमारे पास आ सकते हैं तो वी विल स्टार्ट विद दिस फ्लैग सोर्स के अंदर हम इस लिंक को पेस्ट कर सकते हैं शुरुआत में हम कन्वर्टर को यूएसडी टू आईएनआर कन्वर्टर बनाएंगे तो हम यूएस का फ्लैग है इसे दिखा सकते हैं तोय बेसिकली हमारा फर्स्ट सिलेक्ट कंटेनर बन जाएगा एंड इसी सिलेक्ट कंटेनर को हम प्रॉपर्ली यहां पर कॉपी कर सकते हैं वी कैन पेस्ट इट हियर यहां पर हम टू वाली इंफॉर्मेशन लिखेंगे या इतने पार्ट को कॉपी कर लेते हैं एंड यहां पर पेस्ट कर देते हैं बेसिकली यहां पर हम पैराग्राफ में लिखेंगे टू ये भी हमारा सिलेक्ट कंटेनर बन जाएगा यहां पर हम इंडिया का फ्लैग दिखा रहे होंगे सेव करेंगे रिफ्रेश करेंगे तो यह हमारे पास फ्लैग आ गया यूएसडी यह हमारे पास फ्लैग आ गया इंडिया इसके अंदर ऑप्शन में भी इंडिया दिखाने के लिए यह जो आईएनआर है यहां पर हम सिलेक्टेड लिख सकते हैं सेव एंड रिफ्रेश तो अभी हमारा क्या कन्वर्टर दिख रहा है कन्वर्टर कुछ ऐसा दिख रहा है जिसमें ऊपर हम अमाउंट एंटर करेंगे यहां पे हमारे पास फ्लैग होगा अपनी कंट्री का अभी फ्लैग डायनेमिक चेंज नहीं हो रहा वो सारा लॉजिक हम जावास्क्रिप्ट फाइल के अंदर लिखेंगे पर बेसिकली शुरुआत में हम यूएसडी टू आईआर इस तरीके का कन्वर्टर बनाएंगे कि कैसे डॉलर को हम रुपी में इंडियन रुपी में कन्वर्ट कर सकते हैं तो यह हमारे पास प्रॉपर हमारे दो ड्रॉप डाउन हो गए एक ड्रॉप डाउन है हमारा फ्रॉम वाला एक ड्रॉप डाउन है हमारा टू वाला नेक्स्ट हम चाहे तो अपने लिए एक और डिव बना सकते हैं लेट्स कॉल दिस डिव इस डिव को हम लिख सकते हैं अपना फाइनल मैसेज जिसके अंदर वील बेसिकली राइट समथिंग लाइक यडी इ इक्वल टू 80 आईआर इस तरीके की कुछ इंफॉर्मेशन बेसिक इंफॉर्मेशन होगी जिसको हम दिखा रहे होंगे साथ के साथ हम अपने लिए एक बटन क्रिएट कर सकते हैं लेट्स क्रिएट अ बटन जिसमें होगा गेट एक्सचेंज रेट तो गेट एक्सचेंज रेट को जैसे ही क्लिक करेंगे वैसे ही क्या होगा हमारा फॉर्म एक तरीके से अभी सबमिट हो रहा है जैसे ही हम फॉर्म सबमिट करते हैं फॉर्म के अंदर कोई भी बटन होता है वो अपने आप में एक सबमिट बटन की तरह एक्ड करता है जैसे इसको क्लिक कर रहे हैं फॉर्म हमारा सबमिट हो रहा है फॉर्म सबमिट हो रहा है तो आपको दिख रहा होगा कि ऊपर उसके आर्गुमेंट दिखाई दे रहे हैं तो ये फॉर्म का डिफॉल्ट बिहेवियर होता है और जैसे ही इसको क्लिक कर रहे हैं पेज हमारा दोबारा बार-बार बारबार रीलोड हो रहा है अभी के लिए उस चीज को कंपलीटली इग्नोर करना है पर बेसिकली ये हमारा बेसिक लेआउट है अपने फॉर्म का अब बेसिक लेआउट हमने क्रिएट कर लिया साथ के साथ एक और चीज जो हम कर सकते हैं वी कैन ऐड सम आइकन इन बिटवीन यानी ये फ्रॉम और टू के बीच में हम कोई आइकन ऐड कर सकते हैं आइकन के लिए वी कैन गो टू फंट ऑसम फंट ऑसम के अंदर य हमारे पास काफी सारे आइकंस होते हैं प्लस वी आल्सो हैव फंट ऑसम सीडीएन हम इस लिंक पर जा सकते हैं च इ cd.com लाइब्रेरी फसम हम इस लिंक को कॉपी लिंक टैग को कॉपी करेंगे और इसे यहां पर पेस्ट कर देंगे अपने हेड के अंदर तो ये एक हमारा लिंक होता है जिससे काफी सारे फ्रीली अवेलेबल आइकंस होते हैं जिनको हम यूज कर सकते हैं अब आइकंस को यूज कहां से करना है यह हमारी फंट ऑसम की वेबसाइट होती है जहां से हम अपने फ्री एंड ओपन सोर्स आइकंस को यूज करेंगे तो बेसिकली वी कैन सर्च फॉर एक्सचेंज यह वाला फ्री आइकन है जिसे हम यूज करने वाले हैं लेट्स पेस्ट इट यहां पर फ्रॉम एंड टू के बीच में इसे क्रॉस कर देते हैं एंड यहां पर रिफ्रेश करेंगे तो हमारे पास य आइकन आ गया फ्रॉम एंड टू के बीच में एरोस की फॉर्म में अब इस पूरे लेआउट को हमें अच्छे से कन्वर्ट करना है टू आवर करेंसी कन्वर्टर तो अपनी स्टाइल डॉट सीएसएस को हम खोल लेते हैं स्टाइल ड सीएसएस के अंदर सबसे पहले तो अपनी मार्जिन पडि को हम रिसेट कर देंगे टू जीरो सेव रिफ्रेश हमारी जो बॉडी है बॉडी को हम कर देंगे डिस्प्ले फ्लेक्स बिकॉज वीी आर यूजिंग अ लॉट ऑफ डिब्स टू बी ऑनेस्ट ये सारे के सारे हमारे पास डिव आ जाएंगे जस्टिफाई कंटेंट कर देंगे टू सेंटर रिफ्रेश किया सारा कंटेंट हमारा सेंटर में आ गया आल्सो हम इसे टेक्स्ट या अलाइन आइटम्स भी कर देते हैं टू सेंटर जैसे किया सारे आइटम्स हमारे सेंटर में अलाइन हो गए प्लस हम इसे एक मिनिमम हाइट दे देते हैं व्हिच इज गोइंग टू बी 100 व्यू पोर्ट हाइट तो सारे आइटम्स अब पेज के सेंटर में आ जाएंगे एंड लेट्स आल्सो गिव इट अ बैकग्राउंड कलर अब हम चाहे तो कोई भी बैकग्राउंड कलर दे सकते हैं फॉर एग्जांपल मैंने यहां पर कोरल कलर दे दिया हम कोई भी कलर दे सकते हैं तो बेसिकली हम क्या कर सकते हैं कूलर्स जैसी किसी भी वेबसाइट पर जाकर अपने लिए एक पैलेट जनरेट कर सकते हैं तो काफी सारे डिफरेंट कलर्स के कॉमिनेशन हमें मिल जाएंगे तो ऐसा ही एक कॉमिनेशन मैंने जनरेट किया है जिसमें f4 e4 बी ये कलर को हम अपने बैकग्राउंड कलर की तरह सेट करने वाले हैं अब आ जाते हैं फाइनली अपने कंटेनर पर तो हमारा जो कंटेनर है उसके लिए वी आर गोइंग टू सेट अप बैकग्राउंड कलर ऑफ वाइट ट्रिपल एफ इसे कर लेते हैं रिफ्रेश किया तो यह हमारा कंटेनर है जिसके अंदर हमारा पूरी की पूरी पप वर्क कर रही होगी दिस इज बेसिकली द मेन सेक्शन ऑफ आवर पप अब इसे थोड़ी सी हम पैडिट रेम्स की सेव रिफ्रेश तो थोड़ी सी हमारे पास पैडिट रेडियस दे सकते हैं लेट्स गिव इट अ बॉर्डर रेडियस ऑफ वन रेम तो ये हमारे पास बॉर्डर रेडियस आ गई व कैन आल्सो गिव इट सम हाइट लेट्स से 45 ऑफ व्यू पोर्ट हाइट या इसे हम मिनिमम हाइट भी कर सकते हैं प्लस वी कैन आल्सो गिव इट सम विड्थ 40 ऑफ व्यू पोर्ट हाइट ये हमारे पास प्रॉपर विड्थ आ गई अब हमारा जो कंटेनर है कंटेनर के अंदर फॉर्म पर आ जाते हैं फॉर्म को हम कुछ कुछ मार्जिन देना चाहते हैं बेसिकली इतना पार्ट जो है ये हमारा फॉर्म है तो इसे टॉप से एंड बॉटम से हम कुछ मार्जिन देना चाहते हैं टॉप से हम इसे मार्जिन दे देते हैं टू रेम्स जीरो एंड बॉटम से भी टू रेम्स जीरो रिफ्रेश तो ये हमारे पास थोड़ी सी स्पेस क्रिएट हुई है बॉटम से वी कैन आल्सो डिक्री द मार्जिन टू बी वन रेम एंड अब अपने फॉर्म के अंदर यानी फॉर्म के अंदर जो हमारे पास सिलेक्ट है हम तीन चीजों को चेंज करना चाहते हैं बेसिकली यह जो हमारे सिलेक्ट है दोनों के दोनों सिलेक्ट हमारा जो इनपुट है एंड हमारा जो बटन है तो फॉर्म के अंदर जो सिलेक्ट है जो बटन है एंड जो इनपुट है उन तीनों को हम विड्थ देना चाहते हैं 100% की जितनी भी फॉर्म की विड्थ है पूरी विड्थ इन पर अप्लाई होगी तो ये हमारी अमाउंट आ जाएगी ये हमारा सिलेक्ट आ जाएगा इस इस तरीके से ये हमारा सेकंड सिलेक्ट आ जाएगा एंड ये हमारा बटन आ जाएगा साथ के साथ हम इनके बॉर्डर को सेट करना चाहते हैं टू नन रिफ्रेश किया तो बॉर्डर यहां से गायब हो गया मतलब जो डिफॉल्ट बॉर्डर इनके पास आ रहा था एचटीएमएल की तरफ से उसको हमने गायब कर दिया साथ के साथ हम अपने आउटलाइन को भी सेट करने वाले हैं टू नन आउटलाइन को सेट नन करने का मतलब है जैसे ही हम इस पर क्लिक करेंगे तो कोई आउटलाइन नहीं आ रही पर बेसिकली पहले हमारे पास एक डिफॉल्ट आउटलाइन आ रही थी यहां पर लेट्स आल्सो गिव देम ऑल अ बॉर्डर रेडियस ऑ 0.75 रेम वो बॉर्डर रेडियस अभी हमें दिखाई नहीं देगी क्योंकि हमने बॉर्डर सेट नहीं किया पर धीरे-धीरे एक-एक करके बॉर्डर सेट करेंगे तो हमें बॉर्डर रेडियस दिखाई देगी अब फॉर्म के टॉप एलिमेंट के साथ स्टार्ट करते हैं लेट्स स्टार्ट विद आवर इनपुट बॉक्स तो फॉर्म के अंदर जो हमारा इनपुट है उसके लिए लेट्स गिव इट अ बॉर्डर ऑफ वन पिक्सेल सॉलिड एंड इसे हम लाइट ग्रे कलर देने वाले हैं लेट्स गिव इट लाइट ग्रे सेव एंड रिफ्रेश तो ये हमारे पास क्या आ गया हमारे पास अपना लाइट ग्रे कलर का एक बॉर्डर आ गया साथ के साथ इसे एक बेटर फंट साइज देते हैं वन रेम का सेव किया रिफ्रेश किया तो हमारे पास वन रेम का फंट साइज क्रिएट होकर आ गया वी कैन आल्सो गिव इट सम हाइट लेट्स गिव इट अ हाइट ऑफ थ्री रेम्स मे बी सेव रिफ्रेश तो ये हमारे पास अमाउंट के लिए हाइट आ गई है प्लस हम इसे कुछ पैट भी दे सकते हैं पैडिंडी लेफ्ट एंड राइट से या सिर्फ लेफ्ट से भी पैट दे सकते हैं लेट्स गिव इट अ पैडिट ऑफ 0.5 फ्रेम सेव रिफ्रेश तो यह हमारे पास हमारी अमाउंट एंटर करने का बॉक्स आ गया है इसमें हम 500 या वी कैन कन्वर्ट 000 टू इंडियन रप सो दिस इज आवर अमाउंट बॉक्स अब हम फोकस करने वाले हैं अपने सिलेक्ट पर अब सिलेक्ट के लिए हम चाहते हैं ये जो हमारा फर्स्ट ड्रॉप डाउन है और ये जो हमारा सेकंड ड्रॉप डाउन है दोनों सेम लाइन के अंदर आ जाए तो इनका जो कंटेनर है index.htm के अंदर दोनों के दोनों ये जो हमारे ड्रॉप डाउंस हैं इनको हमने ऐड किया है अपने इस ड्रॉप डाउन क्लास के अंदर तो अपनी जो ड्रॉप डाउन क्लास है उसे हम करेंगे डि ले फ्लेक्स दोनों सेम लाइन पर आ जाएंगे एंड अब इन्हें कर देंगे जस्टिफाई कंटेंट स्पेस बिटवीन करने वाले हैं सेव रिफ्रेश तो दोनों एंड्स पर चले जाएंगे वीी कैन आल्सो अलाइन आइटम्स टू द सेंटर सेव एंड रिफ्रेश अलाइन आइटम सेंटर हमारे लिए होकर आ गया प्लस वी कैन आल्सो गिव इट सम मार्जिन फ्रॉम द टॉप वन रेम की अगर हम मार्जिन दे दे तो यह कुछ डिस्टेंस हमारे पास आ जाएगा या फिर वी कैन आल्सो मेक द मार्ज टू बी टू रेम्स रिफ्रेश ये फ्रॉम आ जाएगा यह टू आ जाएगा तो यहां से हमें चीजें क्लियर हो रही है थोड़ी सी कि इस करेंसी को हम कन्वर्ट करना चाहते हैं और इस वैल्यू से इस वैल्यू के अंदर हम कन्वर्ट करना चाहते हैं अब कैसे कन्वर्ट करेंगे पहले तो अपनी इमेज को ही ठीक कर लेते हैं अपना जो सिलेक्ट कंटेनर है कहां है हमारा सिलेक्ट कंटेनर हमारे पास दो सिलेक्ट कंटेनर्स हैं एक हमारे पास ये सिलेक्ट कंटेनर है जिसके अंदर फ्रॉम है और ये सिलेक्ट कंटेनर है जिसके अंदर टू है तो बेसिकली सिलेक्ट कंटेनर के अंदर जो भी इमेज है हमारे पास उस इमेज को एक फंट साइज हम दे सकते हैं 1.75 रेम्स ताकि इमेज थोड़ी सी छोटी हो जाए इस इमेज को हम एक मैक्सिमम विड्थ दे सकते हैं ऑफ 1.75 रम्स सेव रिफ्रेश ताकि इमेज हमारे पास थोड़ी सी छोटी होकर आए इन फैक्ट वी कैन आल्सो मेक इट टू रेम्स इफ वी वांट सेव रिफ्रेश तो ये 2 रम की हमारे पास इमेज आ जाएगी एंड अब अपने सिलेक्ट कंटेनर पर आ जाते हैं सिलेक्ट कंटेनर कहने का मतलब है बेसिकली ये ड्रॉप डाउन एंड इस ड्रॉप डाउन की हम यहां पर बात कर रहे हैं सबसे पहले इन्हें हम कर देंगे डिस्प्ले फ्लेक्स ताकि हमारी इमेज एंड ड्रॉप डाउन सेम लाइन में आ जाए तो ये हमारी इमेज हो गई यू कैन आल्सो जूम इन अ लिटिल बिट ये हमारी इमेज हो गई ये हमारा ड्रॉप डाउन हो गया दिस इज माय इमेज दिस इज माय ड्रॉप डाउन साथ के साथ इन्हें हम कुछ विड्थ दे सकते हैं लेट्स मेक द विड्थ टू बी सिक्स रेम्स हमने कुछ विड्थ दे दी है इन्हें एक चाहे तो बैकग्राउंड कलर हम दे सकते हैं ताकि आइडेंटिफिकेशन बॉक्स है एंड अभी ये जो सेकंड बॉक्स है जो रेड से हाइलाइटेड है दिस इज आवर सेकंड बॉक्स डिस्प्ले फ्लेक्स के साथ वी कैन आल्सो जस्टिफाई कंटेंट टू सेंटर एंड वी कैन आल्सो अलाइन आवर आइटम्स टू सेंटर साथ के साथ इन्हें एक बॉर्डर रेडियस दे देते हैं या बॉर्डर रेडियस ऑलरेडी गिवन है कहां से गिवन है बॉर्डर रेडियस अच्छा सिलेक्ट कंटेनर के पास बॉर्डर रेडियस नहीं है तो सिलेक्ट कंटेनर को बॉर्डर रेडियस हम दे सकते हैं 0.5 रेम्स की सेव किया रिफ्रेश किया तो इसके पास क्या आ गया बॉर्डर रेडियस आ गई है एंड बॉर्डर को हम कुछ कलर भी दे सकते हैं न पिक्सल सॉलिड ये सेम बॉर्डर हम कॉपी करने वाले जो हमने अपने इनपुट को दिया था सेव रिफ्रेश हम चाहे तो अब अपने बैकग्राउंड कलर को हटा सकते हैं सेव किया रिफ्रेश किया सो दिस इज माय फ्रॉम एंड दिस इज माय टू विड्थ इनकी थोड़ी सी या इफ आई रिवर्ट बैक टू माय ओरिजिनल साइज अभ ये ओरिजिनल क्या है ओरिजिनल कुछ इस तरीके का हमें दिखाई दे रहा है हमारे जो ड्रॉप डाउन का आइकन है इसे भी हम ठीक तरीके से प्लेस कर सकते हैं तो अपने ड्रॉप डाउन आइकन के अंदर आ जाते हैं लेट्स गिव इट अ फंट साइज ऑफ 1 पॉ फ फ्रेम्स प्रोबेबली लेट्स इंक्रीज इट अ लिटिल बिट एंड आल्सो इसे हम मार्जिन दे सकते हैं फ्रॉम टॉप इक्वल टूव रम थोड़ा सा य सेंटर की तरफ आ जाएगा अपने सिलेक्ट का हम चाहे तो साइज इंक्रीज कर सकते हैं तो हमारे सिलेक्ट कंटेनर के अंदर जो सिलेक्ट है उसे हम फंट साइज दे सकते हैं इक्वल टू व रेम सेव रिफ्रेश सो दिस इज आवर इंक्रीजड फंट साइज इसे विड्थ हम रख सकते हैं टू ऑटो सेव रिफ्रेश अब आ जाते हैं अपने मैसेज पर अपनी मैसेज हमने आईडी दि है या क्लास दि है हमने क्लास दी है मैसेज को तो मैसेज क्लास के लिए वी कैन गिव इट सम मार्जिन फ्रॉम टॉप एंड बॉटम तो इसे टू रेम्स की मार्जिन दे देते हैं टॉप से भी बॉटम से भी सेव रिफ्रेश तो ये हमारे पास हमारा मैसेज आ गया कि यडी इ 80 आईआर एंड अब अपने बटन के ऊपर ध्यान देते हैं हमारे सिलेक्ट कंटेनर के अंदर जो हमारे पास बटन है इट्स नॉट इन द सिलेक्ट कंटेनर इट इज इन द फॉर्म फॉर्म का जो बटन है इसे कुछ हाइट दे देते हैं थ डम्स च इज इक्वल टू माय इनपुट साइज रिफ्रेश किया ये हमारे पास बटन आ गया बटन को एक हम बैकग्राउंड कलर देने वाले हैं जो हमने पैलेट से जनरेट किया है ए 4d 98 सेव एंड रिफ्रेश तो यह हमारे पास कुछ कलर आ गया साथ के साथ इसे टेक्स्ट कलर दे देते हैं वाइट सेव रिफ्रेश टेक्स्ट कलर वाइट आ गया वी कैन आल्सो इंक्रीज द फंट साइज टू बी वन रिम रिफ्रेश ये वन या से 1.5 अगर दे रहे हैं रिफ्रेश ओके 1.5 इज टू लार्ज लेट्स गिव इट 1.15 फ्रेम्स ये हमारे पास हमारा गेट एक्सचेंज रेट वाला बटन आ गया जिसके अंदर चीजें जो हैं वो रिफ्रेश करती हुई हमें दिखाई दे रही है व्हेन एवर वी आर क्लिक ऑन द बटन एक और चीज हम कर सकते हैं इसे एक कर्सर भी दे देते हैं साथ में लेट्स गिव इट अ कर्सर पॉइंटर ताकि जब भी हम अपने बटन के ऊपर जाएं हर करें हमारा कर्सर क्या हो चेंज हो तो हमें पता चले कुछ ना कुछ एक्शन तो परफॉर्म होगा ही इस तरीके से हमारे करेंसी कन्वर्टर है जिसका बेसिक लेआउट हमने प्रिपेयर कर लिया है हम चाहें तो यूरो से अपने ऑस्ट्रेलियन डॉलर में कन्वर्ट कर सकते हैं वी कैन कन्वर्ट टू आईआर हम कोई भी ऑप्शन है जिसे चूज कर सकते हैं अब हमें दो काम करने हैं अपने जावास्क्रिप्ट के अंदर सबसे पहला यहां पर हमें सिर्फ चार कंट्रीज नहीं दिखानी हमें सारी की सारी कंट्रीज दिखानी है जैसे हम कंट्री चेंज करें हमारा फ्लैग चेंज होना चाहिए और जैसे इस बटन को क्लिक किया जाए वैसे ही पूरा कन्वर्जन हो और वो चीज हमें यहां पे आके दिखाई दे तो इस तरीके का प्रॉपर जो फुली फंक्शनल ऐप है उसको हम प्रिपेयर करना चाहते हैं तो उसके लिए हमने ऑलरेडी दो जावास्क्रिप्ट फाइल बनाई हुई है एक जावास्क्रिप्ट फाइल है कोड्स . जए के नाम से जिसके अंदर हमने सारी की कंट्रीज की लिस्ट प्रिपेयर की हुई है जिसमें कंट्री का कोड है प्लस हमारी कंट्री की करेंसी है ये वाली फाइल आपको ऑलरेडी नीचे डिस्क्रिप्शन बॉक्स के अंदर मिल रही होगी तो इसे जाकर हम क्रिएट कर सकते हैं नहीं तो आप चाहते हैं कि आपको चार-पांच कंट्रीज के साथ ही स्टार्ट करना है तो यू कैन आल्सो कॉपी द कंट्रीज डायरेक्टली आप डायरेक्टली भी अपनी खुद की फाइल बना सकते हैं इस फाइल के अंदर हम एस सच कोई काम नहीं करेंगे सारा काम हम अपनी app.js इस फाइल के अंदर कर रहे होंगे अब दोनों फाइल्स को index.htm से पहले कनेक्ट भी कर लेते हैं बॉडी टैग से जस्ट पहले वी विल राइट अ स्क्रिप्ट जिसके अंदर सोर्स में पहले हम कोड्स जए को इंक्लूड करेंगे उसके बाद स्क्रिप्ट में सोर्स में हम अपनी पड जस को इंक्लूड करेंगे अब यहां आ जाते हैं अपनी पड जए के अंदर अब फाइनली हम अपने पड जए के अंदर जावास्क्रिप्ट के लॉजिक को लिखना स्टार्ट करेंगे अब अपने जावास्क्रिप्ट के कोड में सबसे पहले अपनी एपीआई जिसे हम यूज करने वाले हैं उसे देख लेते हैं वी आर गोइंग टू यूज दिस करेंसी एपीआई जो हमें इस लिंक पर यहां पर गिट हब के ऊपर इस पेज पर अवेलेबल मिल जाएगी एंड यह रहा इसका लिंक एपीआई के रीड म में बेसिकली वी विल हैव आवर एंड पॉइंट्स तो हमारे पास डिफरेंट डिफरेंट एंड पॉइंट्स है बेसिक फॉर्मेट ये रहेगा हमारे एपीआई के यूआरएल का हम इस एपीआई के अंदर काफी सारी डिफरेंट सर्विसेस है हम इस सर्विस को यूज करना चाहते हैं बेसिकली जब हमें एक करेंसी से दूसरी करेंसी के अंदर कन्वर्ट करना है तो इस लिंक को एक बार कॉपी कर लेते हैं यहां पर क्या हो रहा है हम यूरो से आई थिंक दिस इज जापानीज न जेपी वाई करेंसी दिस इज वन जपनीज न जिस इसके अंदर कन्वर्ट करने की कोशिश की जा रही है तो इस लिंक पर हम जा सकते हैं और यह हमें डेट रिटर्न करेगा लास्ट अपडेटेड डेट फॉर द एक्सचेंज रेट एंड साथ के साथ क्या एक्सचेंज रेट है यूरो से जैपनीज न का वो हमें दिखा रहा है अगर हमें फॉर्स एग्जांपल अगर हमें चाहिए कि हम यूएसडी से यानी डॉलर से इंडियन रुपी के अंदर कन्वर्ट करना चाहते हैं तो ये हमारे पास आ गया एक्सचेंज रेट ये 14th दिसंबर को अपडेट हुआ है एक्सचेंज रेट इज 83 तो इस तरीके से ये जो हमारा लिंक है इसे हम कॉपी कर सकते हैं एंड वी कैन क्रिएट अ वेरिएबल कॉल्ड बेस यू बेस यूआरएल के अंदर हम ये लिंक पेस्ट कर लेंगे अब इस लिंक के अंदर करेंसीज के बाद यहां पर वैसे तो यूएसडी है यहां पर आईन आर है पर यह यहां पर बाद में हम अपने वेरिएबल को लिखने वाले हैं अभी के लिए इसे इतना ही हम छोड़ सकते हैं एंड वी कैन सेव इट सबसे पहले यहां पर आ जाते हैं एंड अपने ऑप्शंस को पॉपलेट करते हैं बेसिकली सारे के सारे ऑप्शन को हम पॉपलेट करेंगे तो अपनी इक्स ड एटीएमएल से हम सेलेक्ट करने वाले हैं अपना ड्रॉप डाउन तो ड्रॉप डाउन इ इक्वल डॉक्यूमेंट डॉट क्वेरी सिलेक्टर एंड व गोइंग टू सिलेक्ट द ड्रॉप डाउन क्लास इन फैक्ट ड्रॉप डाउन के अंदर जो हमारे सिलेक्ट है ड्रॉप डाउन सिलेक्ट्स या थोड़ा सा बड़ा नाम हो जाएगा इसे ड्रॉप डाउन कह देते क्वेरी सिलेक्टर ल से ड्रॉप डाउन के सारे सिलेक्ट या बेसिकली दो सिलेक्ट है हमारे पास ड्रॉप डाउन के अंदर दो ड्रॉपडाउन है उनको हमने सेलेक्ट कर लिया और उन्हीं के ऊपर हम एक लूप चला लेंगे लेट सिलेक्ट ऑफ ड्रॉप डाउन हमारी सेलेक्ट आ गई यह लूप रन करने से पहले एक बार हम अपनी कंट्री लिस्ट को एक्सेस करना चाहते हैं कौन सी कंट्री लिस्ट जो हमारे कोड्स जए के अंदर ये कंट्री लिस्ट वेरिएबल है एक बार इसे एक्सेस करके हम प्रिंट करवा के देखना चाहते हैं तो लेट कोड ऑफ कोड इन कंट्री लिस्ट कसोल डलॉग हमारे सारे के सारे कोड हमारे पास प्रिंट होकर आ जाए यह हमारा फॉर इन लूप हम यूज कर सकते हैं तो रिफ्रेश करेंगे एंड इफ वी इंस्पेक्ट इट एंड गो टू आवर कंसोल तो कंसोल के अंदर हमारे पास सारे के सारे कोड्स अवेलेबल हैं अपने कोड्स के साथ हम कंट्री लिस्ट के अंदर उस कोड का यानी कंट्री का कोड भी प्रिंट करवा सकते हैं ये बेसिकली हमारा करेंसी कोड है ये हमारा कंट्री कोड है रिफ्रेश किया तो ये हमारा करेंसी कोड आ गया हमारा कंट्री कोड आ गया जैसे इसके अंदर अगर हम इंडिया का एग्जांपल लें तो इंडिया के लिए द करेंसी कोड इज आईएनआर बट द कंट्री कोड इज आईन यानी इंडिया तो ये सारी वैल्यूज हमारे पास एक्सेसिबल है इसे हम कट कर लेते हैं एंड यहां पर आकर अपने सिलेक्ट के अंदर हम एक-एक कंट्री कोड के लिए अपना ऑप्शन ऐड करेंगे अब ऑप्शन कैसे ऐड करेंगे हम एक नया एलिमेंट क्रिएट करने वाले हैं लेट न्यू ऑप्शन इज इक्वल टू डॉक्यूमेंट डॉ क्रिएट एलिमेंट और हम एक ऑप्शन टाइप का एलिमेंट है जिसे क्रिएट करेंगे इस न्यू ऑप्शन के अंदर सबसे पहले तो हमारा जो इनर टेक्स्ट होगा यहां पर इसे करेंसी कोड कर देते हैं दैट विल बेसिकली बी इक्वल टू करेंसी कोड साथ के साथ जो हमारे न्यू ऑप्शन का वैल्यू होगी दैट विल आल्सो बी इक्वल टू करेंसी कोड एंड इस न्यू ऑप्शन को हम कहां पर ऐड करेंगे इस न्यू ऑप्शन को हम अपने सिलेक्ट के अंदर ऐड करेंगे यानी इस सिलेक्ट के अंदर तो सिलेक्ट के अंदर हम डॉट अपेंड कर देंगे अपने करेंसी या न्यू ऑप्शन को तो बेसिकली सारी जो हमारी कंट्रीज की लिस्ट थी उन सबको इंडिविजुअल ऑप्शंस के अंदर कन्वर्ट कर रहे हैं और सिलेक्ट के अंदर उन ऑप्शंस को हम ऐड कर रहे हैं इसे सेव कर लिया रिफ्रेश किया नाउ इफ आई लुक एट इट तो इस बार हमारे पास सारी की सारी कंट्रीज हमारे सिलेक्ट के अंदर अवेलेबल है इस दूसरे सिलेक्ट के अंदर भी सारी की सारी कंट्रीज हमारे पास अवेलेबल है तो ये हमारे पास सारी कंट्रीज आ गई अब हम चाहें तो अपने इक्सड टू जीरो हमें पता है दो ही ड्रॉप डाउंस है हमारे पास तो यहां पर बेसिकली या इन फैक्ट सिलेक्ट को आई बिलीव हमने कुछ ना कुछ आईडी दी होगी ये जो हमारा फर्स्ट सिलेक्ट है इसको हमने नेम दिया है फ्रॉम अच्छा फर्स्ट सिलेक्ट को नेम देना है फ्रॉम सेकंड सिलेक्ट को हम नेम देंगे टू तो यहां हम एक लॉजिक ऐड कर सकते हैं दैट इफ सिलेक्ट का जो नेम है दैट इज इक्वल टू फ्रॉम एंड अगर हमारा करेंसी का कोड इज इक्वल टू यूएसडी तो हम क्या करेंगे न्यू ऑप्शन के अंदर हम सिलेक्टेड को लिख देंगे एज सिलेक्टेड तो उस केस में अब हमें यूएसडी दिखाई देगा फ्रॉम के अंदर सेव किया रिफ्रेश किया हमारे पास यूएसडी आ गया इसी तरीके से राइट में अगर हम आईएनआर करना चाहते हैं तो एल्स और इस लॉजिक को कॉपी कर लेते हैं अगर सिलेक्ट का नेम टू है और करेंसी का कोड आईआर है तो हम उसे सेलेक्ट कर लेंगे सेव किया रिफ्रेश किया तो शुरुआत में जिसके साथ हम स्टार्ट करेंगे दैट विल बी यडी टू आई कन्वर्जन उसके बाद हम चाहे तो कुछ भी चेंज कर सकते हैं आल्सो हम चाहते हैं कि जैसे ही कंट्री का नाम चेंज हो यानी यहां पर अगर हमने आईएनआर किया तो हमारे पास फ्लैग भी चेंज होना चाहिए तो हम एक नया फंक्शन बना लेते हैं कॉन्स्ट इसको हम बोल देंगे अपडेट फ्लैग तो अपडेट फ्लैग के लिए एक फंक्शन बना लेते हैं तो हम चाहते हैं जब भी हमारा सिलेक्ट चेंज हो तो यहां लिख देते हैं सिलेक्ट पर हम एक इवेंट लिनर ऐड कर देंगे कि जब भी हमारा सिलेक्ट चेंज हो उस केस में हमारे पास इवेंट लेसनेस में इवेंट होती है उस केस में हम अपडेट फ्लैग को कॉल लगाएंगे विद आवर इवेंट डॉट टारगेट टारगेट होता है बेसिकली जब भी हमने कुछ भी चेंज किया तो कहां पर चेंज आया वो हम अपडेट फ्लैग को पास कर देंगे तो यहां हमारे पास एलिमेंट आ जाएगा एलिमेंट शुरुआत में क्या करेंगे सिर्फ कसोल डलॉग करवा लेते हैं अपने एलिमेंट को सेव किया रिफ्रेश किया वी आल्सो हैव आवर इंस्पेक्ट विंडो तो कंसोल पे आ जाते हैं लेट्स सपोज हम यूएसडी से आई एनआर में चेंज करते हैं जैसे ही सेलेक्ट किया वैसे ही हमारे पास आ गया सेलेक्ट यानी हमने यहां पे चेंज किया है तो हमारे पास वो एलिमेंट आ गया अब इस एलिमेंट के बेसिस पर हम कुछ भी चेंजेज कर सकते हैं तो सबसे पहले तो एलिमेंट से हम अपना करेंसी कोड एक्सट्रैक्ट करेंगे करेंसी कोड होगा हमारे एलिमेंट की वैल्यू करेंसी कोड को चाहे तो हम प्रिंट भी करवा सकते हैं सेव रिफ्रेश यहां अगर हम आईआर सिलेक्ट करते हैं तो हमारा करेंसी कोड होगा आईआर यहां अगर हमने यूरो सिलेक्ट किया तो करेंसी कोड विल बी र करेंसी कोड हमारे पास सक्सेसफुली आ रहा है अब करेंसी कोड के बेसिस पर हमें बेसिकली अपनी नई इमेज लेकर आनी है करेंसी कोड से हम कंट्री कोड लेकर आएंगे कंट्री कोड क्या होगा कंट्री कोड होगा कंट्री लिस्ट के अंदर तो आईएनआर के लिए कंट्री कोड विल बी आई ए यूरो के लिए कंट्री कोड विल बी आई बिलीव यू इस तरीके से हमारे पास कंट्री कोड आ जाएगा और हमारा लिंक क्या होगा न्यू सोर्स लिंक हमारे पास होने वाला है index.htm में जाएंगे और इस लिंक को कॉपी कर लेते हैं इस लिंक के अंदर बेसिकली हमें इस चीज को चेंज करना है यह हमारा कंट्री को कोड बनने वाला है तो यहां पर अपना वेरिएबल लिख देते हैं कंट्री कोड इसे कर लेते हैं सेव एंड अपनी इमेज को कैसे एक्सेस करेंगे अभी एलिमेंट के अंदर हमारे पास क्या है एलिमेंट के अंदर हमारे पास सिलेक्ट है तो सिलेक्ट के अंदर इमेज कहां पर आती है ये हमारा सिलेक्ट है तो बेसिकली हमें सिलेक्ट के पैरेंट में जाना है जो हमारा सिलेक्ट का कंटेनर है उसके अंदर हमें इमेज को जाके सेलेक्ट करना है तो यहां पर जो हमारा एलिमेंट है उसके हम पेरेंट पर जाने वाले हैं यानी पेरेंट एलिमेंट पर जाएंगे एंड फिर पेरेंट एलिमेंट पर हम क्वेरी सिलेक्ट ऐड करने वाले हैं फॉर आवर इमेज तो हमारे पास इमेज आ जाएगी एंड इस इमेज के लिए तो लेट इमेज इज इक्वल टू दिस एंड इस इमेज के अंदर सोर्स को हम चेंज करके कर देंगे अपना न्यू सोर्स इतने पार्ट को कर लेते हैं सेव एंड रिफ्रेश तो एक बार यूएसडी से आईआर में कन्वर्ट करते हैं हमारा फ्लैग चेंज हो गया यूरो में कन्वर्ट करते हैं हमारा फ्लैग चेंज हो गया इफ वी कन्वर्ट इड टू जैपनीज न हमारा फ्लैग चेंज हो गया नेपाल रुपी फ्लैग चेंज हो गया तो इस तरीके से अब हम करेंसी को जैसे ही यहां पे दूसरी करेंसी को ही सिलेक्ट कर रहे हैं लेट्स सपोज आई सिलेक्ट केजीटी तो हमारा फ्लैग चेंज हो गया जीटी क हमारा फ्लैग चेंज हो गया एंड इस तरीके से हमारे पास डिफरेंट डिफरेंट फ्लैग्स अवेलेबल हो रहे हैं अब फ्लैग तो हमने चेंज कर लिया पर बेसिकली अब मुझे चाहिए कि मैं 100 यूएसडी को इफ आई वांट टू कन्वर्ट इट इनटू आईआर तो वो किस तरीके से कन्वर्ट करेंगे तो गेट एक्सचेंज रेट पर जैसे ही क्लिक करें तो हमारे पास एक्सचेंज रेट आना चाहिए उस चीज पर हम काम करने वाले हैं तो हमारा जो बटन होगा उसे सेलेक्ट कर लेते हैं कौन बटन इज इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर हमारे पास हमारे फॉर्म का बटन आ जाएगा एंड इस बटन के ऊपर हम अपना इवेंट लिनर ऐड करेंगे फश होगा यहां पर इस तरीके से ये चीजें दिखाई देंगी हमें ये सारी चीजें नहीं चाहिए हम चाहते हैं बटन के क्लिक करने पर जो भी काम ऑटोमेटिक हो रहे थे उनमें से अब कुछ भी काम ना हो जो भी काम होगा वो हम करवाएंगे तो अब इसे एक बार रिफ्रेश कर लेते हैं लेट्स रिमूव दिस पार्ट तो अब जैसे ही हम गेट एक्सचेंज रेट पर क्लिक करेंगे अब हमारे पास कोई भी चेंज नहीं हो रहा मतलब कुछ भी काम नहीं हो रहा तो सारे काम जो थे उनको हमने प्रिवेंट कर लिया है अब हमें जो काम करवाना है उसे हम करवाना स्टार्ट करेंगे सबसे पहले तो हमने जो भी अमाउंट एंटर की होगी चाहे वो 100 है वो वन है वो 1000 है उस अमाउंट को हम एक्सेस करने वाले हैं तो लेट अमाउंट इज इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर अपने फॉर्म के अंदर से अपने इनपुट को हम चाहे तो एक्सेस कर सकते हैं नहीं तो य अपने डॉट अमाउंट से अपने इनपुट को एक्सेस कर लेंगे ये हमारे पास हमारी अमाउंट आ गई और अमाउंट की वैल्यू को भी हम प्रिंट करवा सकते हैं तो लेट अमाउंट वैल्यू इज इक्वल टू अमाउंट डॉट वैल्यू इसे चाहे तो कसोल डलॉग करवा सकते हैं हम अपनी अमाउंट वैल्यू को सेव किया रिफ्रेश किया जैसे ही फॉर्म सबमिट करेंगे अमाउंट वैल्यू हमारे पास आ गई अगर यहां पर मैंने 760 किया होता तो अमाउंट वैल्यू आ जाती 760 अच्छा यहां पर हम चाहते तो इसे खाली भी छोड़ सकते थे तो हमारे पास एमटी आती अमाउंट या हम चाहते तो -5 इस तरीके का कुछ कर सकते थे तो -5 आता तो उसके लिए हम एक कंडीशन ऐड कर सकते हैं कि अगर इफ माय अमाउंट वैल्यू इज एमटी या फिर हमारी जो अमाउंट वैल्यू है अगर वो लेस दन रो है या लेस दन वन लेस दन वन कह देते हैं लेस दन वन है तो उस केस में ऑटोमेटिक हम क्या करेंगे अमाउंट वैल्यू को सेट कर देंगे टू वन एंड अमाउंट डॉट वैल्यू को भी सेट कर देंगे टू द स्ट्रिंग वन सेव किया रिफ्रेश किया अब यहां पर इफ आई राइट -5 और जैसे ही एंटर किया वो रिसेट हो जाएगा टूव अगर हमने यहां पर खाली छोड़ दिया तो दोबारा रिसेट हो जाएगा 2 ये एक चेंज हम छोटा सा यहां पर कर सकते हैं इनफैक्ट हम नंबर भी बना सकते हैं अपने इनपुट टाइप को अब यहां पर अपने लिए हम एक यूआरएल क्रिएट करेंगे लेट्स क्रिएट अ यूआरएल यूआरएल किससे क्रिएट करेंगे अपने इस बेस यूआरएल से तो हमारे पास हमारा बेस यूआरएल होगा एंड बेस यूआरएल के अंदर बेसिकली यह वाला जो पार्ट है डीड जसन वाला पार्ट इस पार्ट को हम हटा देते हैं एंड यहां हमें अपनी फ्रॉम वाली करेंसी लिखनी है स्लैश एंड फिर हमें अपनी टू वाली करेंसी लिखनी है डॉट जेसन हमें इस यूआरएल के ऊपर अच्छा यहां बेस यूआरएल भी एक वेरिएबल है बेसिकली हमें इस यूआरएल के ऊपर रिक्वेस्ट भेजनी है फेच जो एपीआई हम यूज करेंगे फेच एपीआई वो इस यूआरएल के ऊपर यूज करेंगे यहां पर फ्रॉम करेंसी एंड टू करेंसी को एक्सेस करने के लिए हम ऊपर एक्सेस कर लेते हैं कंस्ट फ्रॉम करेंसी हमारे पासस हो जाएगी डॉक्यूमेंट डॉट क्वेरी सिलेक्टर हम अपने फ्रॉम के अंदर से सिलेक्ट को एक्सेस कर रहे हैं एंड सेम चीज हो जाएगी टू करेंसी के लिए तो यहां टू करेंसी के लिए टू के अंदर से हम अपने सिलेक्ट को एक्सेस करें देंगे तो यह हमारे पास फ्रॉम करेंसी आ जाएगी यह हमारे पास टू करेंसी आ जाएगी पहले हम चाहें तो कसोल डलॉग करवा सकते हैं अपनी फ्रॉम करेंसी एंड अपनी टू करेंसी की वैल्यू को इसे एक बार कॉमेंट आउट कर देते हैं सेव किया रिफ्रेश किया फॉर एग्जांपल अभी हमारे पास यूएसडी है यहां पर आईआर है जैसे ही गेट एक्सचेंज रेट किया यह हमारे फ्रॉम की वैल्यू आ गई यह टू की वैल्यू आ गई पर यह क्या है यह पूरा का पूरा एलिमेंट है हमें पूरा एलिमेंट नहीं चाहिए हमें तो इसकी वैल्यू चाहिए तो डॉट वैल्यू हमारे काम की चीज़ है सेव किया रिफ्रेश किया य फ्रॉम यूएसडी टू आईआर जैसे ही किया यूएसडी आईआर आ गया अगर यहां पर आई वुड हैव डन एसआरडी तो ये एसआरडी आईआर आ गया तो इस तरीके से हमारी जो वैल्यू है उसे हमें एक्सेस करना है इसे कमेंट आउट कर देते हैं यहां पर आते हैं हम डॉट वैल्यू करेंगे इन फैक्ट शिफ्ट डॉट वैल्यू भी नहीं करना हमारी जो वैल्यू है कैपिटल लेटर्स में आ रही है पर हमारी जो एपीआई है वो कैपिटल लेटर्स में वर्क नहीं करती वो स्मॉल लेटर्स में वर्क करेगी तो इसीलिए हमें इसे टू लोअर केस करना पड़ेगा जो स्ट्रिंग का मेथड हमने पढ़ा हुआ है ऑलरेडी टू लोअर केस एंड यही सेम चीज हम इस स्ट्रिंग के ऊपर करने वाले सेव किया इससे हमारे पास क्या आएगा इस यूआरएल पर जब रिक्वेस्ट भेजेंगे तो हमारे पास हमारा एक्सचेंज रेट आएगा तो लेट या जो भी रिस्पांस हमारे पास आता है रिस्पांस इ इक्वल टू फच को हम कॉल करेंगे विद आर यूआरएल एंड अवेट यूज करने के लिए हमें क्या करना पड़ेगा इस फंक्शन को हमें सिंक बनाना पड़ेगा फंक्शन कोंक बनाने के लिए हमें यहां लिखना पड़ेगा एंक से कर लेते हैं एंड अपने रिस्पांस को हम प्रिंट करवाएंगे console.log आ रिंस सेव रिफ्रेश गेट एक्सचेंज रेट किया हमारे पास कुछ रिस्पांस आया एपीआई में स्टेटस 200 है मतलब सारी चीजें अच्छे से वर्क कर रही है अब इस रिस्पांस से हमें इससे डाटा पास करना पड़ेगा तो लेट डटा इ इक्वल टू अवेट रिंस डॉ जसन और हम क्या करेंगे अपने डाटा को प्रिंट करवाएंगे सेव किया रिफ्रेश किया गेट एक्सचेंज रेट एक्सचेंज रेट आ गया जिसमें डाटा है और हमारे पास हमारा एक्स एक्स चेंज रेट एक्सचेंज रेट इज बेसिकली दिस वैल्यू अब ये वैल्यू कैसे एक्सेस करें जो हमारा रेट होगा लेट रेट विल बी डाटा के अंदर से जो भी हमारा टू वाली करेंसी है यानी टू वाली करेंसी यहां पे आई एनआर है इफ आई मेक इट लेट्स सपोज जापनीज ए तो इस बार टू वाली करेंसी क्या होगी जे पवा होगी तो जो भी हमारी टू वाली करेंसी है उसकी वैल्यू है उसे हम टू लोअर केस में अगर कन्वर्ट करें तो इस इंडेक्स पर बिकली इस की पर हमारा डाटा हमारा रेट अवेलेबल होगा तो फाइनली हम अपने सिर्फ जो एक्सचेंज रेट है उसे प्रिंट करवा सकते हैं सेव किया रिफ्रेश किया एक्सचेंज रेट क्या है 83 इफ आई डू जैपनीज ए एक्सचेंज रेट क्या है 142 इफ आई डू ऑस्ट्रेलियन डॉलर एक्सचेंज रेट क्या है 1.49 तो इस तरीके से हमारे पास एक्सचेंज रेट्स आ जाएंगे जिसे हमें अमाउंट से मल्टीप्लाई करना है तो लेट फाइनल अमाउंट फाइनल अमाउंट क्या होगी इज इक्वल टू अमाउंट से हमें मल्टी ला करना है अपने रेट को एंड दिस विल बी आ फाइनल अमाउंट एंड इस फाइनल अमाउंट को हम कहां पर सेव करना चाहते हैं अपने मैसेज के अंदर उस मैसेज को ऊपर एक्सेस कर लेते हैं कंस्ट मैसेज इ इक्वल टू डॉक्यूमेंट डॉट क्वेरी सिलेक्टर यहां पर अपनी मैसेज क्लास से अपने डिव को हम एक्सेस कर सकते हैं दिस इज आवर मैसेज और यहां पर मैसेज से या इन फैक्ट वी कैन क्रिएट अनदर फंक्शन वील कॉल इट कंस्ट अपडेट मैसेज या इनफैक्ट इस काम को यहीं कर लेते हैं क्योंकि हमारे पास बहुत सारे पैरामीटर्स होंगे जो हमें पास करने पड़ेंगे तो अपडेट मैसेज की जगह हम क्या करेंगे मैसेज का जो इनर टेक्स्ट है उसे अपडेट करके कर देंगे हम लिखना चाहते हैं यूएसडी इ इक्वल टू 80 आई एनआर इस तरीके का हम कुछ मैसेज लिखना चाहते हैं तो उसमें वन की जगह हमारे पास अमाउंट आनी चाहिए तो यहां पे अमाउंट की वैल्यू आ जाएगी यूएसडी की जगह हमारे पास क्या आना चाहिए हमारे पास फ्रॉम करेंसी आनी चाहिए तो फ्रॉम करेंसी की वैल्यू हम यहां पर लिख देंगे 80 की जगह हमारे पास एक्सचेंज रेट आना चाहिए तो यहां एक्सचेंज रेट नहीं हमारी फाइनल अमाउंट आनी चाहिए फाइनल अमाउंट आ जाएगी एंड यहां पर हम लिख देंगे अपनी टू करेंसी टू करेंसी की वैल्यू इसे सेव कर लेते हैं एंड लेट्स रिफ्रेश इट अब एक बार चीजों को करना स्टार्ट करते हैं मुझे वन यूएसडी को आईआर में कन्वर्ट करना है नॉट अ नंबर इट्स सेइंग फाइनल अमाउंट इज नॉट अ नंबर एक बार हमारे पास रेट क्या आया उसे एक बार प्रिंट करवा के देखते हैं व्हाट इज द रेट गोइंग टू बी एंड कसोल डॉट लॉग करके व्हाट इज द अमाउंट गोइंग टू बी सेव रिफ्रेश अच्छा अमाउंट हमारे पास एलिमेंट आ रहा है तो यहां अमाउंट नहीं हमें अमाउंट की वैल्यू चाहिए सेव रिफ्रेश आई वांट टू कन्वर्ट वन यूएसडी टू आर गेट एक्सचेंज रेट अमाउंट वैल्यू इज नॉट डिफाइंड दिस इज एमटी आई बिलीव से एमटी वैल्यू हमने रखा है सेव किया रिफ्रेश किया दोबारा से 1 यडी को आईआर में कन्वर्ट करना है दिस इज द एक्सचेंज रेट हमारे पास कन्वर्ट होके आ गया मुझे $10 को आईआर में कन्वर्ट करना है तो इट इज 832 मुझे 000 को आईआर में कन्वर्ट करना है वह हमारे पास आ गया अगर हम लेट्स सपोज 000 को यूरो में कन्वर्ट करना चाहते हैं तो 000 इ इ 10.9 यरो दिखा रहा है हम चाहे तो इंटरनेट पे सर्च कर सकते 1000 आई टू यूरो कितना होता है इट इज 11 पट समथिंग तो यहां दिखा रहा है 10 प समथिंग तो बेसिकली हमारी एपीआई में बिल्कुल लेटेस्ट अपडेटेड डटा हमारे पास नहीं है बट नियर अबाउट मतलब सिमिलर डटा है एपीआई का जो डटा है हम एक डिफरेंट एपीआई यूज कर सकते हैं पर हमारी प ऑलमोस्ट फंक्शनल है मतलब इफ आई कन्वर्ट इट इनटू ऑस्ट्रेलियन डॉलर तो 1000 आईआर 17.9 यूडी दिखा रहा है एंड इंटरनेट पे इट इज आल्सो 17.9 से तो इट इज नियर अबाउट एक्यूरेट नॉट वेरी एक्यूरेट बट हां नियर अबाउट हमें मिल रहा है अपना एक्सचेंज रेट तो चीजें हमारे लिए सारी की सारी यहां पर वर्क कर रही है हमारी जो डिफॉल्ट अमाउंट है उसे हम 100 की जगह वी कैन आल्सो मेक इट इक्वल टू वन सो दैट इट बिकम सिंपलर आल्सो हम एक और चीज ऐड कर देते हैं कि जब फर्स्ट टाइम हमारा डॉक्यूमेंट लोड होगा तो हम अपने जो डॉक्यूमेंट है उस पर एक इवेंट लेसनर ऐड कर सकते हैं कि जब फर्स्ट टाइम हमारा डॉक्यूमेंट लोड होगा तो उस केस में हमें क्या चाहिए उस केस में हम अपने यह सारे काम बेसिकली करना चाहते हैं कि हम शुरुआत में ही एक जो हमारा डिफॉल्ट है यूएसडी टू आईआर कन्वर्जन उसके लिए चीजें दिखाना चाहते हैं तो इतने पार्ट को कट करके वी कैन क्रिएट अनदर फंक्शन वी कैन कॉल इट अपडेट एक्सचेंज रेट एंड कंस्ट अपडेट एक्सचेंज रेट इज इक्वल टू दिस वैल्यू वी कैन मेक दिस फंक्शन ए सिंक एंड अब हमें इसको को एसिंग बनाने की जरूरत नहीं है तो बेसिकली यहां पर हम कॉल करेंगे अपने अपडेट एक्सचेंज रेट को इसको सेव कर लेते हैं तो जैसे ही हमारा पेज लोड हो वैसे ही हम अपने अपडेट एक्सचेंज रेट को कॉल करना चाहते हैं सेव किया रिफ्रेश किया तो शुरुआत में यह वैल्यू हमारे पास अपडेट होके आनी चाहिए थी अपडेट एक्सचेंज रेट व्हाट इज दिस एरर वी आर गेटिंग इंडिकेट वेदर टू ये सारी चीजें हम रिमूव कर देते हैं एंड वी कैन आल्सो पुट दिस अपडेट एक्सचेंज रेट एट द टॉप ऑफ द पेज प्रोबेबली हियर एंड इवेंट लेसनेस को हम लास्ट में ऐड कर देते हैं सेव कर लिया रिफ्रेश किया ओके ये इवेंट लिनर इसलिए नहीं चल रहा क्योंकि हमें विंडो पर ऐड करना है अपना रिफ्रेश किया तो इस बार शुरुआत में ही हमारे पास अपडेट होके आ रही है वैल्यूज अब कुछ कुछ एग्जांपल्स है जिन पर हम रन कर सकते हैं अपने कोड को फॉर एग्जांपल आई वांट टू कन्वर्ट ₹ इंडियन रुपी इनटू नेपाली रुपी तो यह हमारे पास कन्वर्जन होकर आ गया ₹ इंडियन र को इफ आई वांट टू कन्वर्ट इट इन टू जपनीज न तो हमारे पास कन्वर्जन आ गया इफ आई वांट टू कन्वर्ट 100 यूएस डॉल टू जपनीज एन या ऑस्ट्रेलियन डॉलर तो यह हमारे पास कन्वर्जन आ गया तो हमारा जो करेंसी कन्वर्टर है वो हमारे लिए कंप्लीट काम कर रहा है हम चाहे तो एक दो स्टाइल के अंदर इसको और ज्यादा बेटर स्टाइलेज बना सकते हैं और इसके अंदर कुछ चेंजेज कर सकते हैं टू मेक इट इंप्रूव्ड टू मेक इट बेटर बट जो हमारा बेसिक कोड था बेसिक लेआउट था उसको हमने प्रिपेयर कर लिया एंड इस तरीके से हमने एक मिनी प्रोजेक्ट बना लिया है यूजिंग आवर एपीआई एंड यूजिंग ऑल द थिंग्स रिलेटेड टू डोम रिलेटेड टू स्ट्रिंग्स रिलेटेड टू अरेज जिनको हमने अपनी जावास्क्रिप्ट की सीरीज के अंदर सीखा है तो आई होप कि इस पूरी सीरीज को फॉलो करने में हमें बहुत सारा मजा आया होगा हमने काफी सारी इंटरेस्टिंग और नई चीजें सीखी होंगी जावास्क्रिप्ट के अंदर मेजर जो कांसेप्ट होते हैं हमारे फ्रंट एंड के उनको हमने कवर कर लिया है उसके बाद हम चाहें तो अब जाकर जावास्क्रिप्ट के अंदर नोट जस को एक्सप्लोर कर सकते हैं बैक एंड को एक्सप्लोर कर सकते हैं रिएक्ट जस को सीख सकते हैं बहुत सारी इनफैक्ट अनलिमिटेड चीजें हैं जावास्क्रिप्ट के अंदर सीखने के लिए उन्हें आर हम चाहे तो एक्सप्लोर कर सकते हैं तो अब फाइनली हमारी जो सीरीज है वह कंप्लीट हो गई है आज के नोट्स या आज का कोड आपको नीचे डिस्क्रिप्शन बॉक्स के अंदर मिल जाएगा कैसा लगा आपको मेरे साथ जावास्क्रिप्ट सीखना उसके बारे में आप मुझे नीचे कमेंट करके बता सकते हैं यू कैन आल्सो टेल मी ऑन लिंकन आज के लिए इतना ही मिलते हैं नेक्स्ट वीडियो में टिल देन कीप लर्निंग एंड कीप कोडिंग