क्या IE के लिए कोई कंसोल लॉगर है? मैं सांत्वना के लिए परीक्षण / जोर का एक गुच्छा लॉग इन करने की कोशिश कर रहा हूं, लेकिन मैं IE में ऐसा नहीं कर सकता।
क्या IE के लिए कोई कंसोल लॉगर है? मैं सांत्वना के लिए परीक्षण / जोर का एक गुच्छा लॉग इन करने की कोशिश कर रहा हूं, लेकिन मैं IE में ऐसा नहीं कर सकता।
जवाबों:
आप "डेवलपर टूल" (F12) लॉन्च करके IE8 स्क्रिप्ट कंसोल तक पहुंच सकते हैं। "स्क्रिप्ट" टैब पर क्लिक करें, फिर दाईं ओर "कंसोल" पर क्लिक करें।
अपने जावास्क्रिप्ट कोड के भीतर, आप निम्न में से कोई भी कर सकते हैं:
<script type="text/javascript">
console.log('some msg');
console.info('information');
console.warn('some warning');
console.error('some error');
console.assert(false, 'YOU FAIL');
</script>
इसके अलावा, आप कॉल करके कंसोल को साफ़ कर सकते हैं console.clear()
।
ध्यान दें: ऐसा प्रतीत होता है कि आपको पहले डेवलपर टूल लॉन्च करना होगा फिर काम करने के लिए अपने पेज को रिफ्रेश करना होगा।
console.log()
टूट जाएगी। हमेशा अपनी कॉल की रक्षा करेंwindow.console && console.log('stuff');
संस्करण 8 के बाद से, अन्य ब्राउज़रों की तरह, इंटरनेट एक्सप्लोरर का अपना कंसोल है। हालाँकि, यदि कंसोल सक्षम नहीं है, तो console
ऑब्जेक्ट मौजूद नहीं है और किसी कॉल में console.log
कोई त्रुटि होगी।
एक अन्य विकल्प log4javascript (पूर्ण प्रकटीकरण: मेरे द्वारा लिखा गया) का उपयोग करना है, जिसका अपना लॉगिंग कंसोल है जो सभी मुख्यधारा के ब्राउज़रों में काम करता है, जिसमें IE> = 5, और ब्राउज़र के स्वयं के कंसोल के लिए एक आवरण जो अपरिभाषित के मुद्दे से बचा जाता है console
।
यदि आप console.log()
उत्पादन के लिए कमांड जारी करना समाप्त करते हैं, तो आपको IE के लिए किसी प्रकार के फिक्स में डालने की आवश्यकता है - क्योंकि console
केवल F12
डिबगिंग मोड में परिभाषित किया गया है।
if (typeof console == "undefined") {
this.console = { log: function (msg) { alert(msg); } };
}
[जाहिर है अलर्ट (संदेश) को हटा दें; एक बार जब आप सत्यापित कर लेते हैं कि यह काम करता है]
यह भी देखें कि 'कंसोल' अन्य समाधानों और अधिक विवरणों के लिए इंटरनेट एक्सप्लोरर के लिए अपरिभाषित त्रुटि है
नहीं है Firebug Lite जो IE में Firebug कार्यक्षमता का एक बहुत देता है।
अपनी पुस्तक में, "जावास्क्रिप्ट निंजा का रहस्य", जॉन रेसिग (jQuery के निर्माता) के पास वास्तव में एक सरल कोड है जो क्रॉस-ब्राउज़र कंसोल.लॉग मुद्दों को संभाल लेगा। वह बताते हैं कि वह एक लॉग संदेश रखना चाहते हैं जो सभी ब्राउज़रों के साथ काम करता है और यहां बताया गया है कि उसने इसे कैसे कोडित किया है:
function log() {
try {
console.log.apply(console, arguments);
} catch(e) {
try {
opera.postError.apply(opera, arguments);
}
catch(e) {
alert(Array.prototype.join.call( arguments, " "));
}
}
}
उस स्निपेट में एक कमी है। :)
IE8 या कंसोल सपोर्ट कंसोल.लॉग तक सीमित है (कोई डीबग, ट्रेस, ...) आप निम्न कार्य कर सकते हैं:
यदि कंसोल OR कंसोल.लग अपरिभाषित है: कंसोल फ़ंक्शंस के लिए डमी फ़ंक्शंस बनाएं (ट्रेस, डीबग, लॉग, ...)
window.console = {
debug : function() {}, ...};
यदि कंसोल को परिभाषित किया जाता है।
window.console = {
debug : window.console.log, ...};
विभिन्न IE संस्करणों में मुखर समर्थन के बारे में निश्चित नहीं है, लेकिन किसी भी सुझाव का स्वागत है।
आप क्रॉस-ब्राउज़र रैपर का उपयोग कर सकते हैं: https://github.com/MichaelZelensky/log.js
IE के पुराने संस्करण के लिए (IE8 से पहले), यह आईई डेवलपर टूलबार में कंसोल लॉग को देखने के लिए सीधे आगे नहीं है, घंटों के शोध और कई अलग-अलग समाधानों की कोशिश करने के बाद, अंत में, निम्नलिखित टूलबार मेरे लिए बहुत अच्छा उपकरण है:
इसका मुख्य लाभ IE6 या IE7 के लिए एक कंसोल प्रदान कर रहा है, इसलिए आप देख सकते हैं कि त्रुटि क्या है (कंसोल लॉग में)
मैं हमेशा से कुछ ऐसा करता रहा हूं:
var log = (function () {
try {
return console.log;
}
catch (e) {
return function () {};
}
}());
और उस बिंदु से हमेशा लॉग (...) का उपयोग करें, कंसोल का उपयोग करके बहुत अधिक फैंसी मत बनो। [चेतावनी | त्रुटि | और इसी तरह], बस इसे सरल रखें। मैं आमतौर पर सरल समाधान पसंद करता हूं फिर फैंसी बाहरी पुस्तकालय, यह आमतौर पर भुगतान करता है।
IE के साथ समस्याओं से बचने के लिए सरल तरीका (गैर मौजूदा कंसोल के साथ)
console.log()
केवल तभी काम करता है जब IE का उपकरण खुला है (हाँ IE भद्दा है)। देखें stackoverflow.com/questions/7742781/…