IE 용 콘솔 로거가 있습니까? 콘솔에 여러 테스트 / 어설 션을 기록하려고하는데 IE에서는이 작업을 수행 할 수 없습니다.
IE 용 콘솔 로거가 있습니까? 콘솔에 여러 테스트 / 어설 션을 기록하려고하는데 IE에서는이 작업을 수행 할 수 없습니다.
답변:
"개발자 도구"(F12)를 실행하여 IE8 스크립트 콘솔에 액세스 할 수 있습니다. "스크립트"탭을 클릭 한 다음 오른쪽의 "콘솔"을 클릭하십시오.
JavaScript 코드 내에서 다음 중 하나를 수행 할 수 있습니다.
<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부터 Internet Explorer에는 다른 브라우저와 마찬가지로 자체 콘솔이 있습니다. 그러나 콘솔이 활성화 console
되지 않은 경우 개체가 존재하지 않으며를 호출 console.log
하면 오류가 발생합니다.
또 다른 옵션은 IE> = 5를 포함한 모든 주류 브라우저에서 작동하는 자체 로깅 콘솔과 undefined 문제를 방지하는 브라우저 자체 콘솔 용 래퍼가있는 log4javascript (전체 공개 : 필자가 작성)를 사용하는 것 console
입니다.
console.log()
프로덕션에 명령을 릴리스하는 console
경우에는 F12
디버깅 모드 에서만 정의 되기 때문에 IE에 대한 일종의 수정 사항을 적용해야 합니다.
if (typeof console == "undefined") {
this.console = { log: function (msg) { alert(msg); } };
}
[분명히 alert (msg)를 제거하십시오); 일단 당신이 그것이 작동하는지 확인하면 진술]
참조 '콘솔'Internet Explorer 용 정의되지 않은 오류가 다른 솔루션 및 자세한 내용은
IE에서 많은 Firebug 기능을 제공하는 Firebug Lite 가 있습니다 .
그의 저서 "Secrets of Javascript Ninja"에서 John Resig (jQuery의 창시자)는 브라우저 간 console.log 문제를 처리 할 매우 간단한 코드를 가지고 있습니다. 그는 모든 브라우저에서 작동하는 로그 메시지를 원한다고 설명하며 다음과 같이 코딩했습니다.
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 또는 console.log로 제한된 콘솔 지원 (디버그, 추적 없음, ...)의 경우 다음을 수행 할 수 있습니다.
console OR console.log가 정의되지 않은 경우 : 콘솔 기능 (추적, 디버그, 로그, ...)에 대한 더미 기능 생성
window.console = {
debug : function() {}, ...};
그렇지 않으면 console.log가 정의되고 (IE8) console.debug (기타)가 정의되지 않은 경우 : 모든 로깅 기능을 console.log로 리디렉션하면 해당 로그를 유지할 수 있습니다!
window.console = {
debug : window.console.log, ...};
다양한 IE 버전의 assert 지원에 대해서는 확실하지 않지만 어떤 제안이라도 환영합니다.
크로스 브라우저 래퍼를 사용할 수 있습니다 : https://github.com/MichaelZelensky/log.js
IE 8 이전 버전의 경우 IE 개발자 도구 모음에서 콘솔 로그를 보는 것은 쉽지 않습니다. 시간을 들여 조사하고 다양한 솔루션을 시도한 후 마지막으로 다음 도구 모음은 저에게 훌륭한 도구입니다.
이것의 주요 장점은 IE6 또는 IE7 용 콘솔을 제공하므로 오류가 무엇인지 확인할 수 있습니다 (콘솔 로그에서).
나는 항상 다음과 같은 일을 해왔습니다.
var log = (function () {
try {
return console.log;
}
catch (e) {
return function () {};
}
}());
그리고 그 시점부터는 항상 log (...)를 사용하고 콘솔을 사용하는 것에 너무 화려하지 마십시오. [warn | error | 등], 그냥 간단하게 유지하십시오. 나는 일반적으로 간단한 솔루션을 선호하고 멋진 외부 라이브러리를 선호합니다.
IE의 문제를 피하는 간단한 방법 (기존이 아닌 console.log 사용)
console.log()
IE의 개발 도구가 열려있을 때만 작동합니다 (예 IE는 엉터리입니다). 참조 stackoverflow.com/questions/7742781/...을