6 साल के बच्चे के पिता के रूप में, वर्तमान में छोटे बच्चों (और कोई औपचारिक शिक्षा के लिए कोडिंग करने के लिए एक रिश्तेदार नौसिखिया है ताकि सुधार की आवश्यकता होगी), मुझे लगता है कि सबक हाथों से खेलने के माध्यम से सबसे अच्छा होगा। यदि 6 साल का बच्चा यह समझने के लिए तैयार है कि एक क्लोजर क्या है, तो वे काफी पुराने हैं कि खुद को जाना है। मेरा सुझाव है कि कोड को jsfiddle.net में पेस्ट करके, थोड़ा समझाकर, और एक अनोखे गाने को तैयार करने के लिए उन्हें अकेला छोड़ दूं। नीचे दिए गए व्याख्यात्मक पाठ शायद 10 साल की उम्र के लिए अधिक उपयुक्त हैं।
function sing(person) {
var firstPart = "There was " + person + " who swallowed ";
var fly = function() {
var creature = "a fly";
var result = "Perhaps she'll die";
alert(firstPart + creature + "\n" + result);
};
var spider = function() {
var creature = "a spider";
var result = "that wiggled and jiggled and tickled inside her";
alert(firstPart + creature + "\n" + result);
};
var bird = function() {
var creature = "a bird";
var result = "How absurd!";
alert(firstPart + creature + "\n" + result);
};
var cat = function() {
var creature = "a cat";
var result = "Imagine That!";
alert(firstPart + creature + "\n" + result);
};
fly();
spider();
bird();
cat();
}
var person="an old lady";
sing(person);
निर्देश
डेटा: डेटा तथ्यों का एक संग्रह है। यह संख्या, शब्द, माप, अवलोकन या यहां तक कि सिर्फ चीजों का वर्णन हो सकता है। आप इसे छू नहीं सकते, इसे सूंघ सकते हैं या इसका स्वाद ले सकते हैं। आप इसे लिख सकते हैं, इसे बोल सकते हैं और इसे सुन सकते हैं। आप कंप्यूटर का उपयोग करके स्पर्श गंध और स्वाद बनाने के लिए इसका उपयोग कर सकते हैं । इसे कोड का उपयोग करके कंप्यूटर द्वारा उपयोगी बनाया जा सकता है।
CODE: उपरोक्त सभी लेखन को कोड कहा जाता है । यह जावास्क्रिप्ट में लिखा है।
JAVASCRIPT: जावास्क्रिप्ट एक भाषा है। जैसे अंग्रेजी या फ्रेंच या चीनी भाषा हैं। बहुत सारी भाषाएं हैं जो कंप्यूटर और अन्य इलेक्ट्रॉनिक प्रोसेसर द्वारा समझी जाती हैं। एक कंप्यूटर द्वारा समझने के लिए जावास्क्रिप्ट के लिए एक दुभाषिया की आवश्यकता होती है। सोचिए अगर कोई शिक्षक जो केवल रूसी बोलता है, वह आपकी कक्षा को स्कूल में पढ़ाने आता है। जब शिक्षक "все садятся" कहता है, तो कक्षा समझ नहीं पाएगी। लेकिन सौभाग्य से आपकी कक्षा में एक रूसी शिष्य है जो सभी को यह बताता है कि "सब लोग बैठते हैं" - इसलिए आप सभी करते हैं। वर्ग कंप्यूटर की तरह है और रूसी शिष्य दुभाषिया है। जावास्क्रिप्ट के लिए सबसे आम दुभाषिया एक ब्राउज़र कहा जाता है।
BROWSER: जब आप किसी वेबसाइट पर जाने के लिए कंप्यूटर, टैबलेट या फोन पर इंटरनेट से कनेक्ट होते हैं, तो आप एक ब्राउजर का उपयोग करते हैं। आपके द्वारा ज्ञात उदाहरण इंटरनेट एक्सप्लोरर, क्रोम, फ़ायरफ़ॉक्स और सफारी हैं। ब्राउज़र जावास्क्रिप्ट को समझ सकता है और कंप्यूटर को बता सकता है कि उसे क्या करने की आवश्यकता है। जावास्क्रिप्ट निर्देशों को फ़ंक्शन कहा जाता है।
समारोह: जावास्क्रिप्ट में एक समारोह एक कारखाने की तरह है। यह केवल एक मशीन के साथ एक छोटा कारखाना हो सकता है। या इसमें कई अन्य छोटे कारखाने हो सकते हैं, जिनमें से प्रत्येक में कई मशीनें अलग-अलग काम करती हैं। एक वास्तविक जीवन के कपड़े के कारखाने में आप कपड़े और धागे के बोबिन और टी-शर्ट और जींस से बाहर आने के बारे में जान सकते हैं। हमारी जावास्क्रिप्ट फैक्ट्री केवल डेटा को संसाधित करती है, यह एक छेद या पिघल धातु को सीवे, ड्रिल नहीं कर सकती है। हमारे जावास्क्रिप्ट कारखाने में डेटा जाता है और डेटा बाहर आता है।
यह सब डेटा सामान थोड़ा उबाऊ लगता है, लेकिन यह वास्तव में बहुत अच्छा है; हमारे पास एक फ़ंक्शन हो सकता है जो एक रोबोट को बताता है कि रात के खाने के लिए क्या बनाना है। मान लीजिए कि मैं आपको और आपके मित्र को अपने घर आमंत्रित करता हूं। आपको चिकन पैर सबसे अच्छा लगता है, मुझे सॉसेज पसंद हैं, आपका दोस्त हमेशा वही चाहता है जो आप चाहते हैं और मेरा दोस्त मांस नहीं खाता है।
मुझे खरीदारी करने का समय नहीं मिला है, इसलिए निर्णय लेने के लिए फ़ंक्शन को जानना होगा कि हमारे पास फ्रिज में क्या है। प्रत्येक घटक का खाना पकाने का समय अलग-अलग होता है और हम चाहते हैं कि सब कुछ उसी समय रोबोट द्वारा गर्म परोसा जाए। हमें उस डेटा को फ़ंक्शन प्रदान करना होगा जो हमें पसंद है, फ़ंक्शन फ्रिज में 'बात' कर सकता है, और फ़ंक्शन रोबोट को नियंत्रित कर सकता है।
एक फ़ंक्शन में सामान्य रूप से एक नाम, कोष्ठक और ब्रेसिज़ होते हैं। ऐशे ही:
function cookMeal() { /* STUFF INSIDE THE FUNCTION */ }
ध्यान दें कि /*...*/
और //
ब्राउज़र द्वारा पढ़ा जा रहा कोड बंद करें।
NAME: आप जो भी शब्द चाहते हैं, उसके बारे में एक फ़ंक्शन को कॉल कर सकते हैं। उदाहरण "cookMeal" दो शब्दों को एक साथ जोड़ने और शुरुआत में दूसरा एक कैपिटल लेटर देने के लिए विशिष्ट है - लेकिन यह आवश्यक नहीं है। इसमें एक स्थान नहीं हो सकता है, और यह अपने आप में एक नंबर नहीं हो सकता है।
PARENTHESES: "कोष्ठक" या ()
फैक्ट्री में सूचना के पैकेट भेजने के लिए जावास्क्रिप्ट फंक्शन फैक्ट्री के दरवाजे या गली में एक पोस्ट बॉक्स पर लेटर बॉक्स हैं। कभी-कभी पोस्टबॉक्स को उदाहरण के लिए चिह्नित किया जा सकता है, cookMeal(you, me, yourFriend, myFriend, fridge, dinnerTime)
इस स्थिति में आप जानते हैं कि आपको इसे क्या डेटा देना है।
BRACES: "ब्रेसेस" जो इस तरह दिखते हैं, {}
वे हमारे कारखाने की रंगी हुई खिड़कियां हैं। कारखाने के अंदर से आप बाहर देख सकते हैं, लेकिन बाहर से आप अंदर नहीं देख सकते।
लम्बी कोड प्रदर्शनी अबोवे
हमारा कोड शब्द फ़ंक्शन से शुरू होता है , इसलिए हम जानते हैं कि यह एक है! फिर फ़ंक्शन का नाम गाते हैं - यह मेरा खुद का विवरण है कि फ़ंक्शन क्या है। फिर कोष्ठक () । कोष्ठक हमेशा एक समारोह के लिए होते हैं। कभी कभी वे खाली हैं, और कभी कभी वे में कुछ है यह एक में एक शब्द है।: (person)
। इसके बाद इस तरह ब्रेस होता है {
। यह फ़ंक्शन गायन () की शुरुआत का प्रतीक है । इसका एक साथी है जो गाने के अंत () को इस तरह चिह्नित करता है}
function sing(person) { /* STUFF INSIDE THE FUNCTION */ }
तो इस फ़ंक्शन में गायन के साथ कुछ करना हो सकता है, और किसी व्यक्ति के बारे में कुछ डेटा की आवश्यकता हो सकती है। उस डेटा के साथ कुछ करने के लिए उसके अंदर निर्देश हैं।
अब, फंक्शन सिंग () के बाद , कोड के अंत के पास लाइन है
var person="an old lady";
शब्द: पत्र संस्करण "चर" के लिए खड़े हैं। एक चर एक लिफाफे की तरह है। बाहर की तरफ इस लिफाफे पर "व्यक्ति" अंकित होता है। हमारे कामकाज की जानकारी के साथ इसके अंदर कागज की एक पर्ची होती है, जिसमें कुछ अक्षर और रिक्त स्थान एक साथ जुड़ जाते हैं जैसे कि स्ट्रिंग का एक टुकड़ा (इसे एक स्ट्रिंग कहा जाता है) जो एक वाक्यांश को "एक बूढ़ी महिला" बना देता है। हमारे लिफाफे में अन्य प्रकार की चीजें हो सकती हैं जैसे संख्याएँ (जिन्हें पूर्णांक कहा जाता है), निर्देश (जिन्हें फ़ंक्शन कहा जाता है), सूचियाँ (जिन्हें सरण कहा जाता है )। क्योंकि यह चर सभी ब्रेसिज़ के बाहर लिखा गया है {}
, और क्योंकि आप टिंटेड विंडो के माध्यम से देख सकते हैं जब आप ब्रेसिज़ के अंदर होते हैं, तो यह चर कोड में कहीं से भी देखा जा सकता है। इसे हम 'वैश्विक परिवर्तनशील' कहते हैं।
अंतर्राष्ट्रीय संस्करण: व्यक्ति एक वैश्विक चर है, जिसका अर्थ है कि यदि आप "वृद्ध महिला" से इसके मूल्य को "एक युवा पुरुष" में बदलते हैं , तो व्यक्ति तब तक एक युवा व्यक्ति रहेगा जब तक आप इसे फिर से बदलने का निर्णय नहीं लेते हैं और किसी अन्य कार्य में कोड देख सकता है कि यह एक जवान आदमी है। प्रेस F12बटन या विकल्प सेटिंग पर नज़र एक ब्राउज़र के डेवलपर कंसोल खोलें और "व्यक्ति" टाइप देखने के लिए क्या यह मान है। person="a young man"
इसे बदलने के लिए टाइप करें और फिर "व्यक्ति" टाइप करें फिर देखें कि यह बदल गया है।
इसके बाद हमारे पास लाइन है
sing(person);
यह रेखा फ़ंक्शन को कॉल कर रही है, जैसे कि वह एक कुत्ते को बुला रही हो
"चलो गाओ , आओ और मिल व्यक्ति !"
जब ब्राउज़र ने जावास्क्रिप्ट कोड को इस रेखा तक पहुँचाया है, तो यह कार्य शुरू कर देगा। मैंने यह सुनिश्चित करने के लिए अंत में लाइन लगाई कि ब्राउज़र के पास इसे चलाने के लिए आवश्यक सभी जानकारी है।
कार्य क्रियाओं को परिभाषित करते हैं - मुख्य कार्य गायन के बारे में है। इसमें फ़र्स्टपार्ट नामक एक चर है जो उस व्यक्ति के बारे में गायन पर लागू होता है जो गीत के प्रत्येक छंद पर लागू होता है: "वहाँ" + व्यक्ति + "था जो निगल गया था"। यदि आप फ़र्स्टपार्ट को कंसोल में टाइप करते हैं, तो आपको एक उत्तर नहीं मिलेगा क्योंकि वेरिएबल किसी फ़ंक्शन में बंद है - ब्राउज़र ब्रेसिज़ की रंगी खिड़कियों के अंदर नहीं देख सकता है।
क्लोजर: क्लोजर छोटे कार्य हैं जो बड़े सिंग () फ़ंक्शन के अंदर होते हैं । बड़े कारखाने के अंदर छोटे कारखाने। प्रत्येक के पास अपने ब्रेसिज़ होते हैं, जिसका अर्थ है कि उनके अंदर के चर बाहर से नहीं देखे जा सकते हैं। इसीलिए चर ( प्राणी और परिणाम ) के नामों को बंदियों में दोहराया जा सकता है लेकिन विभिन्न मूल्यों के साथ। यदि आप कंसोल विंडो में इन चर नामों को टाइप करते हैं, तो आपको इसका मूल्य नहीं मिलेगा क्योंकि यह रंगी हुई खिड़कियों की दो परतों द्वारा छिपा हुआ है।
क्लोजर सभी जानते हैं कि फ़र्स्टपार्ट नाम के सिंग () फंक्शन का वैरिएबल क्या है, क्योंकि वे अपनी टिंटेड विंडो से देख सकते हैं।
बंद होने के बाद लाइनें आती हैं
fly();
spider();
bird();
cat();
गायन () फ़ंक्शन इनमें से प्रत्येक फ़ंक्शन को दिए गए क्रम में कॉल करेगा। फिर गायन () फ़ंक्शन का काम किया जाएगा।