웹 프론트엔드 JS 튜토리얼 자바스크립트 디버깅 지침_자바스크립트 기술

자바스크립트 디버깅 지침_자바스크립트 기술

May 16, 2016 pm 06:25 PM
javascript 디버그

과거에는 IO에 대한 JavaScript의 지원이 매우 약하여 해당 텍스트 파일에 쓸 수 없었습니다. 또한 예외 개체 Error가 균일하지 않아 자세한 스택을 인쇄할 수 없었습니다. 예외 객체를 사용자 정의하는 것은 일반적으로 메시지 속성만 볼 수 있기 때문에 매우 불쾌한 방법입니다. 게다가 다른 사용자 정의 속성은 가장 느린 for...in 루프를 사용하여 탐색해야 합니다. 현재로서는 다른 방법이 없습니다. 예를 들어 Firefox에는 console.log가 있습니다. 다음은 콘솔 객체의 메소드 목록입니다. Firebug에 대한 자세한 사용 방법은 이 문서를 참조하세요.
기능 설명

로그(obj[, obj, ...]) 콘솔에 메시지를 출력합니다. 여러 매개변수를 입력할 수 있으며 출력은 공백으로 구분됩니다.
函数 说明
log(obj[, obj, ...]) 向控制台输出一个信息。可以输入多个参数,输出将已空格分隔各参数输出。
第一参数可以包含格式化文本,例如:
log(‘这里有%d个%s',count,apple);
字符串格式:
%s:字符串。
%d, %i:数字。
%f: 浮点数。
%o -超链接对象。
debug(obj[, obj, ...]) 向控制台输出一个信息,信息包含一个超链接链接到输出位置。
info(obj[, obj, ...]) 向控制台输出一个带信息图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
warn(obj[, obj, ...]) 向控制台输出一个带警告图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
error(obj[, obj, ...]) 向控制台输出一个带错误图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
assert(expression[, obj, ...]) 测试一个表示是否为true,如果为false,提交一个例外信息到控制台。
dir(obj) 列出对象的所有属性。
dirxml(node) 列出HTML或XML Element的XML源树。
trace() 输出堆栈的调用入口。
group(obj[, obj, ...]) 将信息分组再输出到控制台。通过groupEnd()结束分组。
groupEnd() 结束分组输出。
time(name) 创建一个名称为name的计时器,计算代码的执行时间,调用timeEnd(name)停止计时器并输出执行时间。
timeEnd(name) 停止名称为name的计时器并输出执行时间。
profile([title]) 开始对脚本进行性能测试,title为测试标题。
profileEnd() 结束性能测试。
count([title]) 计算代码的执行次数。titile作为输出标题。
첫 번째 매개변수에는 서식이 지정된 텍스트가 포함될 수 있습니다. 예:
log('There are %d %s', count, apple)
문자열 형식: 디버그(obj[, obj, ...]) 출력 위치에 대한 하이퍼링크가 포함된 메시지를 콘솔에 출력합니다. 정보(obj[, obj, ...]) 메시지 아이콘과 배경색을 사용하여 메시지를 콘솔에 출력합니다. 메시지에는 출력 위치에 대한 하이퍼링크가 포함되어 있습니다. 경고(obj[, obj, ...]) 경고 아이콘과 배경색이 포함된 메시지를 콘솔에 출력합니다. 메시지에는 출력 위치에 대한 하이퍼링크가 포함되어 있습니다. 오류(obj[, obj, ...]) 오류 아이콘 및 배경색과 함께 메시지를 콘솔에 출력합니다. 메시지에는 출력 위치에 대한 하이퍼링크가 포함되어 있습니다. assert(표현식[, obj, ...]) 표현이 참인지 테스트하고 거짓인 경우 콘솔에 예외 메시지를 제출합니다. 디렉터리(obj) 객체의 모든 속성을 나열합니다. dirxml(노드) HTML 또는 XML 요소의 XML 소스 트리를 나열합니다. 추적() 출력 스택의 호출 항목입니다. 그룹(obj[, obj, ...]) 정보를 그룹화하여 콘솔에 출력합니다. groupEnd()를 통해 그룹을 종료합니다. 그룹끝() 그룹 출력을 종료합니다. 시간(이름) name이라는 타이머를 생성하고, 코드의 실행 시간을 계산하고, timeEnd(name)을 호출하여 타이머를 중지하고 실행 시간을 출력합니다. timeEnd(이름) name이라는 타이머를 중지하고 실행 시간을 출력합니다. 프로필([제목]) 스크립트 성능 테스트를 시작합니다. 제목은 테스트 제목입니다. 프로필끝() 성능 테스트를 종료합니다. 개수([제목]) 코드가 실행된 횟수를 셉니다. title을 출력 제목으로 사용합니다. IE8에도 console.log가 있지만 이는 F12를 누르고 디버깅 모드에 들어갈 때만 적용됩니다. 그렇지 않으면 오류가 보고됩니다. 오류를 보고하지 않으려면 일반적으로 빈 개체를 구현하여 덮어써야 합니다.


코드 복사


코드는 다음과 같습니다.


if (!window.console ){
window .console = {};
var 메소드 = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"],
noop = function(){}
for(var i = 0 , method=methods[i ];) window.console[method] = noop; } 아마 Opera9.5x 이후에는 추가 사항이 있을 것입니다. 드래곤플라이 이스트(Dragonfly East)라고 불린다. 물론, Firebug의 다양한 로그 출력과 비교할 수는 없습니다. 단지 Opera.postError 메소드만 제공합니다.


코드 복사

코드는 다음과 같습니다.
if (window.opera && Opera.postError ) { opera.postError(message); } Safari에는 Web Inspector 구성 요소를 기반으로 하고 Firefox와 비슷한 느낌을 주는 console.log도 있습니다. 과일 사람도 아니고 그것에 대해 모릅니다. Firebug만큼 방법이 많지 않습니다... 새로 시작되는 브라우저 크롬의 경우 이제 확장 프로그램에 Firebug가 설치된 크롬 버전을 검색할 수 있습니다.
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

C++ 함수 디버깅에 대한 자세한 설명: 다중 스레드 함수의 문제를 디버깅하는 방법은 무엇입니까? C++ 함수 디버깅에 대한 자세한 설명: 다중 스레드 함수의 문제를 디버깅하는 방법은 무엇입니까? May 02, 2024 pm 04:15 PM

C++ 다중 스레드 디버깅은 GDB를 사용할 수 있습니다. 1. 디버깅 정보 컴파일을 활성화합니다. 2. 중단점을 설정합니다. 3. 스레드를 보려면 infothread를 사용합니다. 4. 스레드를 전환하려면 next, stepi 및 locals를 사용합니다. 실제 사례 디버깅 교착 상태: 1. threadapplyallbt를 사용하여 스택을 인쇄합니다. 2. 스레드 상태를 확인합니다. 3. 기본 스레드를 한 단계씩 진행합니다. 4. 교착 상태를 해결하기 위해 액세스를 조정합니다.

LeakSanitizer를 사용하여 C++ 메모리 누수를 디버깅하는 방법은 무엇입니까? LeakSanitizer를 사용하여 C++ 메모리 누수를 디버깅하는 방법은 무엇입니까? Jun 02, 2024 pm 09:46 PM

LeakSanitizer를 사용하여 C++ 메모리 누수를 디버깅하는 방법은 무엇입니까? LeakSanitizer를 설치합니다. 컴파일 플래그를 통해 LeakSanitizer를 활성화합니다. 애플리케이션을 실행하고 LeakSanitizer 보고서를 분석합니다. 메모리 할당 유형과 할당 위치를 식별합니다. 메모리 누수를 수정하고 동적으로 할당된 모든 메모리가 해제되었는지 확인하세요.

golang 함수 디버깅 및 분석 바로가기 golang 함수 디버깅 및 분석 바로가기 May 06, 2024 pm 10:42 PM

이 기사에서는 실행을 일시 중지하고, 변수를 확인하고, 중단점을 설정하는 데 사용되는 내장 디버거 dlv를 포함하여 Go 기능 디버깅 및 분석을 위한 바로 가기를 소개합니다. 로깅 - 로그 패키지를 사용하여 메시지를 기록하고 디버깅 중에 확인합니다. 성능 분석 도구 pprof는 호출 그래프를 생성하고 성능을 분석하며, gotoolpprof를 사용하여 데이터를 분석합니다. 실제 사례: pprof를 통해 메모리 누수를 분석하고 호출 그래프를 생성하여 누수를 일으키는 함수를 표시합니다.

Java 람다 표현식에서 효율적인 디버깅을 수행하는 방법은 무엇입니까? Java 람다 표현식에서 효율적인 디버깅을 수행하는 방법은 무엇입니까? Apr 24, 2024 pm 12:03 PM

효율적으로 Lambda 표현식을 디버그합니다. IntelliJ IDEA 디버거: 변수 선언이나 메서드에 중단점을 설정하고, 내부 변수와 상태를 검사하고, 실제 구현 클래스를 확인합니다. Java9+JVMTI: 런타임 JVM에 연결하여 식별자를 얻고, 바이트코드를 검사하고, 중단점을 설정하고, 실행 중에 변수와 상태를 모니터링합니다.

Java 동시 프로그래밍에서 동시성 테스트 및 디버깅을 수행하는 방법은 무엇입니까? Java 동시 프로그래밍에서 동시성 테스트 및 디버깅을 수행하는 방법은 무엇입니까? May 09, 2024 am 09:33 AM

동시성 테스트 및 디버깅 Java 동시 프로그래밍의 동시성 테스트 및 디버깅은 매우 중요하며 다음 기술을 사용할 수 있습니다. 동시성 테스트: 단위 테스트: 단일 동시 작업을 격리하고 테스트합니다. 통합 테스트: 여러 동시 작업 간의 상호 작용을 테스트합니다. 부하 테스트: 부하가 심한 상황에서 애플리케이션의 성능과 확장성을 평가합니다. 동시성 디버깅: 중단점: 스레드 실행을 일시 중지하고 변수를 검사하거나 코드를 실행합니다. 로깅: 스레드 이벤트 및 상태를 기록합니다. 스택 추적: 예외의 원인을 식별합니다. 시각화 도구: 스레드 활동 및 리소스 사용량을 모니터링합니다.

PHP 비동기 코드를 디버깅하는 방법 PHP 비동기 코드를 디버깅하는 방법 May 31, 2024 am 09:08 AM

PHP 비동기 코드 디버깅을 위한 도구는 다음과 같습니다. Psalm: 잠재적인 오류를 찾는 정적 분석 도구입니다. ParallelLint: 비동기 코드를 검사하고 권장 사항을 제공하는 도구입니다. Xdebug: 세션을 활성화하고 코드를 단계별로 실행하여 PHP 애플리케이션을 디버깅하기 위한 확장입니다. 다른 팁으로는 로깅 사용, 어설션, 로컬에서 코드 실행, 단위 테스트 작성 등이 있습니다.

PHP 디버깅 오류: 일반적인 실수에 대한 가이드 PHP 디버깅 오류: 일반적인 실수에 대한 가이드 Jun 05, 2024 pm 03:18 PM

일반적인 PHP 디버깅 오류는 다음과 같습니다. 구문 오류: 코드 구문을 확인하여 오류가 없는지 확인하세요. 정의되지 않은 변수: 변수를 사용하기 전에 변수가 초기화되고 값이 할당되었는지 확인하세요. 세미콜론 누락: 모든 코드 블록에 세미콜론을 추가합니다. 함수가 정의되지 않았습니다. 함수 이름의 철자가 올바른지 확인하고 올바른 파일이나 PHP 확장이 로드되었는지 확인하세요.

C++ 함수 디버깅에 대한 자세한 설명: 예외 처리가 포함된 함수의 문제를 디버깅하는 방법은 무엇입니까? C++ 함수 디버깅에 대한 자세한 설명: 예외 처리가 포함된 함수의 문제를 디버깅하는 방법은 무엇입니까? Apr 30, 2024 pm 01:36 PM

예외 처리가 포함된 C++ 디버깅 함수는 예외 지점 중단점을 사용하여 예외 위치를 식별합니다. 예외 정보와 스택 추적을 인쇄하려면 gdb에서 catch 명령을 사용하십시오. 예외 로거를 사용하여 메시지, 스택 추적 및 변수 값을 포함한 예외를 캡처하고 분석합니다.

See all articles