यह एक लंबा पाठ होगा लेकिन मैं इसे फिर से कहूंगा।
JAVASCRIPT कठिन है। पिछली बार जब हम मिले थे, मैं जावास्क्रिप्ट की दुनिया में कदम रख रहा था, उज्ज्वल आंखों वाला, आशावान कोडर जंगली जंगल में कदम रख रहा था और कह रहा था "यह कितना कठिन हो सकता है?"। मैं कितना गलत था??? यह कठिन हो गया है, मैं बच रहा हूं (मुश्किल से), यहां मेरी यात्रा के बारे में एक छोटी सी अराजक कहानी है।
चर: पागलपन की शुरुआत
वेरिएबल वे कंटेनर होते हैं जिनमें मान होते हैं, जहां आप डेटा संग्रहीत करते हैं या उसमें हेरफेर करते हैं। मेरा मतलब है, हमारे पास उन्हें बनाने के 3 तरीके क्यों हैं: var, Let, और const? क्यों? ES6 में हंसें।
var: उन्होंने कहा कि var एक ढीली तोप है। जैसे मौका का खेल खेलना। इसके नजदीक मत जाओ।
चलो: उन चरों के लिए बढ़िया जो बदल सकते हैं। प्रबंधन करना आसान.
Const: उन मानों के लिए है जो समान रहते हैं। अचल. ओह - स्थिरांक का मतलब यह नहीं है कि मान बदल नहीं सकता है, इसका मतलब सिर्फ यह है कि आप इसे पुन: असाइन नहीं कर सकते हैं।
नोट: ईसीएमएस्क्रिप्ट 2015 या ईएस6 जावास्क्रिप्ट का दूसरा प्रमुख संशोधन था।
ओह, हमने स्ट्रिंग कॉन्सटेनेशन, हैलो टेम्प्लेट लिटरल्स को अलविदा कह दिया। टेम्प्लेट शाब्दिक के साथ अब आप ${} के साथ आसानी से बैकटिक्स और एंबेड वेरिएबल का उपयोग कर सकते हैं। यहां जीवन थोड़ा आसान हो गया है, लेकिन यह पता लगाना कि बैकटिक्स बनाम कोट्स का उपयोग कब करना है? एक और मन-मस्तिष्क।
// Good old concat const message = "Hi, " name ". You are " age " years old."; // Template literal const message = `Hi, ${name}! You are ${age} years old.`;
कार्य: उर्फ श्रीमान पुन: प्रयोज्यता, श्रीमान रखरखाव...
Function कथनों का एक समूह है जो किसी कार्य को निष्पादित करता है। कर्ली ब्रैकेट में फ़ंक्शन कीवर्ड, फ़ंक्शन नाम, पैरामीटर या नहीं, Js स्टेटमेंट शामिल है।
function greet() { console.log("Hello, fellow strugglers?!"); }
शुरुआत में वे सरल लग रहे थे: कुछ तर्क को समाहित करें, इसे कॉल करें (मैं कहता हूं कि इसे लागू करें), और उछाल! आप कोडिंग कर रहे हैं।
तब ES6 ने कहा "यह एरो फ़ंक्शन है, इसका उपयोग करें"। एरो फ़ंक्शंस सरल दिखते हैं, है ना? फ़ंक्शंस लिखने का बस एक छोटा सा तरीका। मुझे वाक्यविन्यास समझने में थोड़ा समय लगा।
const greet = () => { console.log("Hello, fellow strugglers?!"); }
लूप्स: अनंत के साथ नृत्य।
कष्ट सहने के अनेक तरीके. लूप्स कोड के एक ब्लॉक को कई बार निष्पादित कर सकते हैं। यदि आप एक ही कोड को बार-बार, हर बार अलग मान के साथ चलाना चाहते हैं तो वे उपयोगी हैं। वे कई हैं:
1. जबकि लूप: तब तक लूप करता रहता है जब तक स्थिति सत्य है। बुराई। और मैं इसके चचेरे भाई के बारे में बात नहीं कर रहा हूँ, कुछ समय के लिए।
2. लूप के लिए: लूप के लिए अच्छा पुराना, मेरे दोस्त। लूप के लिए भरोसेमंद. बहुत परिचित. जब आप किसी वेरिएबल को बढ़ाना भूल जाते हैं तो यह इतना सुरक्षित और अनंत लूप फेंकने की क्षमता से भरपूर होता है।
3. forEach: जो कि लूप के कूलर, अधिक हिप्स्टर चचेरे भाई की तरह है। इसे काउंटरों की आवश्यकता नहीं है, यह मुझे अनंत तक नहीं ले जाता है। मेरे आदमी.
4. और 5. for..in और for..of: एक वस्तुओं पर लूपिंग के लिए बढ़िया है, दूसरा सरणियों पर पुनरावृत्ति के लिए है। मैं उन्हें मिलाता रहता हूं और दर्द से सीखता हूं। अभी भी सीख रहा।
//for loop for (let i = 0; i console.log(num));
सरणी: वह सूची जो खोजती रहती है
ऐरे की शुरुआत बहुत ही आशाजनक रही। वस्तुओं की एक सरल सूची. चीजों को अंदर धकेलो, चीजों को बाहर खींचो। आसान है ना?
let shoppingList = ["apples", "bananas", "chocolate"]; shoppingList.push("ice cream"); console.log(shoppingList); // ['apples', 'bananas', 'chocolate', 'ice cream']
फ़िल्टर, मानचित्र दर्ज करें, और ढूंढें और बाकी सरणी विधि गिरोह। तब से मेरा दिमाग पहले जैसा नहीं रहा।
फ़िल्टर() विधि उन तत्वों से भरी एक नई सरणी बनाती है जो किसी फ़ंक्शन द्वारा प्रदान किए गए परीक्षण को पास करती है।
खोज() विधि परीक्षण पास करने वाले पहले तत्व का मान लौटाती है। ऐरे विधियाँ बहुत सारी हैं, मुझे प्रत्येक के लिए दस्तावेज़ की आवश्यकता है?, मेरा मतलब है कि लंबाई, ब्याह, स्लाइस, जुड़ना, पॉप, पुश, अनशिफ्ट, शिफ्ट, मैप.., आइए यहीं रुकें।
let numbers = [1, 2, 3, 4, 5]; let evenNumbers = numbers.filter(num => num % 2 === 0); console.log(evenNumbers); // [2, 4]
वस्तुएं: सारणियों का भ्रमित करने वाला चचेरा भाई
फिर वस्तुएं आईं। ऑब्जेक्ट एक प्रकार से सरणियों की तरह होते हैं, लेकिन कुंजियों और मान के साथ। मैंने कहा, "अच्छा है, मैं इसे संभाल सकता हूँ।" लेकिन फिर जावास्क्रिप्ट ने तरीकों को शामिल किया, और अचानक वस्तुएं अपने आप काम करने लगीं। और फिर वस्तुओं की सरणी समीकरण में प्रवेश कर गई। गुणों तक पहुँचने के लिए मैं या तो डॉट नोटेशन या ब्रैकेट नोटेशन का उपयोग कर रहा हूँ। और मुझे से शुरुआत न कराएं। यह
//Without method let shoppingCart = { apples: 3, bananas: 2, chocolate: 1 }; // with method let cart = { items: ["apple", "banana"], addItem(item) { this.items.push(item); } }; cart.addItem("chocolate"); console.log(cart.items); // ['apple', 'banana', 'chocolate']
DOM हेरफेर: जहां वास्तविक संघर्ष शुरू हुआ
एक बार जब मुझे सरणियों और वस्तुओं के बारे में आत्मविश्वास महसूस हुआ, तो मैंने सोचा, “डोम में हेरफेर करने का समय आ गया है! मैं अब व्यावहारिक रूप से एक वेब डेवलपर हूं!” आप कुछ नहीं जानते, Ygritte ने प्रसिद्ध रूप से कहा।
यह आसान होना चाहिए, मैंने फिर कहा। बस एक तत्व लें और उसे बदल दें। यदि यह एक आईडी है, तो getElementbyId मेरे लिए है। एक क्लास getElementsbyClassName भी है या queryselector और वह जिसके सभी भाई हैं।
और फिर यह संपूर्ण addEventListener व्यवसाय है। निश्चित रूप से, यह काम करता है, लेकिन कभी-कभी, घटनाएं ऐसी भड़कने लगती हैं जैसे उनका अपना कोई दिमाग हो।
फिर मैंने एक शॉपिंग कार्ट बनाने का प्रयास किया। मुझे कई दिन लगे और मैंने अपने विद्वान सहकर्मियों को बहुत सारे एसओएस सिग्नल भेजे। यहां मैं एपेंड चाइल्ड, रिमूव चाइल्ड, एलिमेंट्स बना रहा हूं, एलिमेंट्स पकड़ रहा हूं, एट्रिब्यूट्स सेट कर रहा हूं, स्टाइल कर रहा हूं, फंक्शन पर फंक्शन कॉल कर रहा हूं।
फिर साहसपूर्वक एक नकली डेटाबेस जोड़ा; मैं और सरणी में फिर से हेरफेर। मैं पहुंच रहा हूं, मैं धक्का दे रहा हूं, मैं ढूंढ रहा हूं, मैं थक गया हूं (फिर से उठता हूं)।
आयात और निर्यात: साहसपूर्वक पागलपन साझा करना??
कुछ बिंदु पर, मैंने इतनी अधिक जावास्क्रिप्ट लिखी थी कि मुझे अपने कोड को संशोधित करने की आवश्यकता पड़ी। आयात और निर्यात दर्ज करें।
Copy code // module.js export function greet() { console.log("Hello from the module!"); } // main.js import { greet } from './module.js'; greet();
मैंने सोचा कि मेरे कोड को छोटे टुकड़ों में तोड़ने से यह आसान हो जाएगा। मुझे नहीं पता था कि मैं भ्रम का पहाड़ खड़ा कर दूंगा।
अब मैं ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (ओओपी) शुरू करने जा रहा हूं, यह अजीब लगता है, लेकिन इससे पहले कि मैं फिर से खो जाऊं, मुझे अपने सप्ताहांत का आनंद लेने दीजिए।
अंत तक बने रहने के लिए धन्यवाद. लक्ष्य अब भी प्रतिदिन 1% बेहतर बना हुआ है। #ES6 #CodingStruggles #WebDevelopment #JavaScriptMadness #ProgrammingHumor #LearnToCode
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3