2016-05-04 9 views
5

मैं समझता हूं कि आईई 10 संस्करणों को छोड़कर कॉन्स कीवर्ड को बोर्ड में पहले से ही लागू किया गया है, लेकिन क्या यह व्यवहार्य है? अगर कोई मेरी साइट पर IE10 < पर कूदता है तो "const" कीवर्ड को "var" पर फिर से असाइन किया जाएगा? अगर नहीं तो पूरी साइट असफल हो जाएगी? MDN कॉन्स कीवर्ड पर दस्तावेज़ नीचे एक आसान चार्ट देते हैं जो मुझे बताता है कि न केवल आईई, बल्कि कई मोबाइल ब्राउज़र इसका समर्थन नहीं करते हैं। क्या मुझे बस इसे स्क्रैप करना चाहिए और var का उपयोग करना चाहिए?तो मैं जावास्क्रिप्ट कॉन्स कीवर्ड का उपयोग कर रहा हूं, आईई में क्या होता है?

+0

https://www.microsoft.com/en-gb/developers/articles/5-ways-to-test-your-website-in-old-versions-of-ie/ –

उत्तर

4

ईसीएमएस्क्रिप्ट 5 (ईएस 6) को ईसीएमएस्क्रिप्ट 5 ट्रांसलेटर पर बेबेल लें।

आप लिखते हैं:

const a = 123; 

यह आउटपुट:

"use strict"; 

var a = 123; 

असमर्थित ब्राउज़र पर अपने कोड को तोड़ने की क्षमता पर्याप्त नहीं है, तो मुझे लगता है कि है कि होना चाहिए।

+0

इसकी व्यवहार्यता क्या है एक ईएस 5-शिम का उपयोग करके तय किया जा रहा है? – lluisrojass

+0

यह काम नहीं करेगा, es5-shim मूल रूप से es3 में es5 का उपयोग करने के लिए बहुत सारी पॉलीफ़िलों का योग है, लेकिन यह कोड को पारदर्शी नहीं करता है, और यह आपको कॉन्स कार्य करने के लिए आवश्यक है। या तो var का उपयोग करें, या Babel –

3

आईई 11 और ऊपर const का समर्थन करता है लेकिन आईई 10 और नीचे नहीं है।

यदि आप किसी भी ब्राउज़र में const का उपयोग करने का प्रयास नहीं करते हैं, तो आपको एक वाक्यविन्यास त्रुटि मिलेगी। यदि आपको पुराने ब्राउज़र का समर्थन करना होगा, तो आप const का उपयोग नहीं कर सकते हैं जब तक कि आप अपने कोड को ईएस 5 में संकलित करने के लिए एक ट्रांसलेटर का उपयोग न करें। Babel ऐसे ट्रांसपेलर का एक अच्छा उदाहरण है।

0

यदि आप const का उपयोग कर स्वच्छ ES6 (ES2015) कोड लिखना चाहते हैं तो आप Babel जैसे जेएस कंपाइलर का उपयोग कर सकते हैं। उदाहरण के लिए:

const a = 1; 

यह

"use strict"; 
var a = 1; 

के लिए पुनः संकलित आप दर्दरहित कोलाहल विन्यास उपयोग इस yeoman babel generator चाहते हैं।

+0

के साथ es6 पर जाएं, इस समस्या की व्यवहार्यता es5-shim का उपयोग करके तय की जा रही है? – lluisrojass

संबंधित मुद्दे