मैं यहां बेबेल के महत्व को समझने के लिए संघर्ष कर रहा हूं ... इसलिए ईएस 6 साथ आता है और हमें वसा तीर फ़ंक्शंस, छोटे सिंटैक्स इत्यादि देता है तो हमें पारंपरिक जेएस में ES6 को संकलित करने की आवश्यकता क्यों है? क्या ऐसा इसलिए है क्योंकि वहां पुराने ब्राउज़र हैं जो नए जेएस सिंटैक्स की व्याख्या नहीं कर सकते हैं? या क्या स्रोत कोड को बनाए रखने के साथ इसका कुछ संबंध है? एक नोब सवाल का बिट मुझे पता है - लेकिन हे, मैं नोब हूँ! किसी भी अंतर्दृष्टि की सराहना की!मुझे बैबेल जेएस की आवश्यकता क्यों है?
उत्तर
सभी ब्राउज़र ES6 का समर्थन नहीं करते हैं। प्रतिक्रिया जैसे पारदर्शी चीजों के साथ।
आप इसे अधिकार मिल गया। ऐसे कई ब्राउज़र हैं जो ईएस 6 का समर्थन/आंशिक रूप से समर्थन नहीं करते हैं, इसलिए आपको आने वाले वर्षों के लिए पारंपरिक जेएस की व्याख्या करने की आवश्यकता है। विशेष रूप से जब ग्राहक शिकायत कर रहे हैं कि आपकी वेबसाइट उनके आई 6 ब्राउज़र पर काम नहीं करती है
जबकि यहां दिए गए उत्तरों सभी सही हैं, बेबेल केवल ES6 (ES2015) के बारे में नहीं है। ईसीएमए मानक समिति जावास्क्रिप्ट भाषा में वार्षिक अपडेट जारी करने पर सहमत हुई है। बेबेल हमेशा मानकों को एकीकृत करेगा, जबकि हम नहीं जानते कि सभी ब्राउज़र क्या करेंगे, और यदि वे करते हैं, तो वे बदलते मानकों को बनाए रखने में सक्षम होंगे या नहीं।
बेबेल जैसे ट्रांसपेलर के साथ, हम वेब ब्राउज़र से आगे रह सकते हैं और ब्राउज़र निर्माताओं को सुविधाओं को एकीकृत करने, पॉलीफिल का उपयोग करने, या जो भी कुछ भी करने की प्रतीक्षा करने के बजाय ईसीएमएस्क्रिप्ट की नई विशेषताओं का उपयोग कर सकते हैं। यह अंतिम उपयोगकर्ता को उन सुविधाओं को अनुकूलित करने की अनुमति देता है जिन्हें वे उपयोग करना चाहते हैं और भाषा का अपना संस्करण बना सकते हैं।
इस बारे में बेबेल बात के निर्माता को सुनने के लिए, आप this JavaScript Jabber episode सुन सकते हैं।
धन्यवाद रयान। हां मैंने दूसरे दिन कार में उस एपिसोड का हिस्सा सुना ... मेरे जैसे युवा ऑस्ट्रेलियाई:) – ngboverflow
बहुत बढ़िया! मैंने पिछले साल में इसका इस्तेमाल करने से बेबेल के बारे में सीखा। मेरे लिए, जावास्क्रिप्ट नई सुविधाओं के साथ एक पूरी तरह से नई भाषा है। हमारे पास एसिंक का इंतजार है, उदाहरण के लिए, मेरी राय में जो भी लंबे समय तक कॉलबैक लिख रहा है, उसके लिए एक पूर्ण गेम परिवर्तक है। यह कोड को और समझने योग्य बनाता है, जो कि बहुत बड़ा है। समझने योग्य कोड बनाए रखने योग्य कोड के बराबर है। बेबेल पूरी तरह से कमाल है और मैं इसे पूरी तरह से अपने टूलचेन का एक हिस्सा बनाने की सलाह दूंगा। –
हेक, इन सभी प्रयोगात्मक प्लगइन और चरण-0-प्रीसेट के साथ, अधिकांश लोग नवीनतम सुविधाओं का उपयोग कर रहे हैं * पहले * रिलीज़ होने से पहले। (जैसे एसिंक/प्रतीक्षा, जो ES6 या ES7 का हिस्सा नहीं है)। – Bergi
मेरे अनुभव में बेबेल का उपयोग करने का कोई अच्छा कारण नहीं है। टाइपस्क्रिप्ट हर तरह से बेहतर है।
अधिकांश आधुनिक ब्राउज़रों के पास आज लगभग पूर्ण समर्थन es6 है। 96% से 99% समर्थन से।
https://kangax.github.io/compat-table/es6/
मुख्य बात याद आ रही ES6 मॉड्यूल है। वर्तमान में केवल सफारी ES6 मॉड्यूल का समर्थन करता है। ईएस 6 मॉड्यूल के लिए समर्थन Google क्रोम 60 में आना चाहिए।
ईएस 6 कोड चलाने के लिए आपको ब्राउज़र या वेबपैक जैसे बंडलर का उपयोग करके एक जावास्क्रिप्ट फ़ाइल में ईएस 6 कोड मॉड्यूल को जोड़ना होगा। बंडलिंग के लिए वेबपैक 3.0 का उपयोग करने के साथ मुझे शुभकामनाएं थीं।
बेबेल नई भाषा सुविधाओं को पुराने में परिवर्तित करने के लिए ज़िम्मेदार है।
आप कोड लिख सकते हैं जो केवल बंडलर का उपयोग करके कई ब्राउज़र पर चलेंगे लेकिन बेबेल का उपयोग किए बिना। आप बेबेल के साथ इसे पार करके कोड को और अधिक मजबूत बनाते हैं, इसलिए आपको केवल यह करना चाहिए यदि आपको आवश्यकता हो।
- 1. मुझे टाइपिफ़ की आवश्यकता क्यों नहीं है?
- 2. मुझे यहां अर्धविराम की आवश्यकता क्यों है?
- 3. मुझे इंटरफ़ेस की आवश्यकता क्यों है?
- 4. मुझे DJANGO_SETTINGS_MODULE सेट की आवश्यकता क्यों है?
- 5. फोनगैप + की आवश्यकता है जेएस
- 6. क्यों "{} \" की आवश्यकता है?
- 7. कैस्पर जेएस को मॉड्यूल की आवश्यकता है
- 8. बैबेल
- 9. मुझे तेजी से अंडरस्कोर की आवश्यकता क्यों है?
- 10. प्रतिक्रिया/प्रवाह - मुझे एक एक्शन-प्रेषक की आवश्यकता क्यों है?
- 11. मुझे PyMem_Malloc() के लिए गिल की आवश्यकता क्यों है?
- 12. मुझे php में isset() फ़ंक्शन की आवश्यकता क्यों है?
- 13. मुझे "स्टोर" की आवश्यकता क्यों है: "हाँ" elasticsearch में?
- 14. जावा इकाई - मुझे खाली कन्स्ट्रक्टर की आवश्यकता क्यों है?
- 15. मुझे फ़्लिकर एपीआई कुंजी की आवश्यकता क्यों है?
- 16. क्लास.get एन्नोटेशन() को मुझे कास्ट करने की आवश्यकता क्यों है?
- 17. मुझे मैक्स एंडपॉइंट और httpGetEnable दोनों की आवश्यकता क्यों है?
- 18. मुझे आईएलके, पीडीबी और एक्सपी फाइलों की आवश्यकता क्यों है?
- 19. मुझे Adapter.notifyDataSetChanged() का उपयोग करने की आवश्यकता क्यों नहीं है?
- 20. मुझे सरणी से पहले तारांकन की आवश्यकता क्यों है?
- 21. मुझे परियोजना अनुपालन 1.5 में बदलने की आवश्यकता क्यों है?
- 22. ग्रोवी: मुझे स्क्वायर ब्रैकेट से बचने की आवश्यकता क्यों है?
- 23. टाइपफ़ोफ़ की आवश्यकता क्यों है?
- 24. स्कैनफ की आवश्यकता क्यों है?
- 25. प्रिंटवाइटर की आवश्यकता क्यों है?
- 26. $ रूट की आवश्यकता क्यों है?
- 27. ट्विस्ट की आवश्यकता क्यों है?
- 28. क्यों वेक्टर की आवश्यकता है?
- 29. मुझे किस एसएसएल प्रमाणपत्र की आवश्यकता है?
- 30. क्या मुझे -D_REENTRANT -pthreads की आवश्यकता है?
हां, क्योंकि सब कुछ ES6 का समर्थन नहीं करता है। साथ ही, अगर आप रिएक्ट या जेएसएक्स का उपयोग कर रहे हैं, तो इसे लेबल करने के लिए बेबेल की आवश्यकता है। – Li357
मुझे लगता है कि ईएस 6 कुछ समय में आधिकारिक होगा, लेकिन आज वेब विकास को नए मानक में बदलना वाकई मुश्किल है क्योंकि ऐसी कई वेबसाइटें हैं जो अन्यथा नहीं चलती हैं। ब्राउज़र विकास से लड़कों को कुछ ऐसा बनाने की आवश्यकता होगी जो es6 और es5 पढ़े, ताकि आप सभी वेबसाइटों तक पहुंच सकें, भले ही कोड-अपडेट न हों। हम देखेंगे कि यह कैसे जाता है :) और मैं वास्तव में अनुमान लगा रहा हूं, मेरी टिप्पणी में कुछ भी अधिकारी नहीं है। –
@ DawidZbiński ES6 पहले से ही आधिकारिक है।और पुरानी लिपियों के बारे में कुछ भी जटिल नहीं है, नया मानक पिछड़ा-संगत है, प्रत्येक ES5 मान्य ES6 भी है। – Bergi