2011-01-24 3 views
11

Javascript에서 병목 현상을 찾으려고합니다. 기본적으로 Javascript로 작성된 크롬 확장 기능을 개발 중이며,이 기능을 수행하는 데 4-5 초가 소요됩니다. 많은 코드가 작업에 관련되어 있고 print 문/크롬을 사용하여 개발 도구에 내장되어 있습니다. dev 도구는 내 Javascript가 실행되는 것을 보지 못하는 것 같습니다. 나는 누군가가 이익이 될 수 있다고 생각하는 충고/도구를 가지고 있는지 궁금합니다.자바 스크립트에서 병목 현상 찾기?

+1

자세한 정보가 필요합니다. 어떤 작업을 수행하고 있습니까? 내부 루프의 코드 목록을 제공 할 수 있습니까? 일반적으로 더 나은 알고리즘을 사용하면 성능이 크게 향상됩니다. 당신이 성취하고자하는 것과 그것이 성취하려는 방법을 우리에게 말해주십시오. 아마도 우리는 더 많은 것을 도울 수 있습니다. – Sparafusile

+0

setTimeout 등을 사용하기 때문에 코드가 실행되지 않을 가능성이 있습니다. 타임 라인을 사용하여 실제로 일어나는 일을 살펴보십시오. – loislo

+0

예, JS 환경이 웹 페이지와 별개이며 인스펙터가 JS 스크립트를 볼 수 없기 때문에 삽입 된 컨텐츠 스크립트가 디버그 및 프로파일 작성이 매우 어렵다는 것을 보았습니다. 나는 아직 어떤 좋은 해결 방법도 모른다. – yonran

답변

0

아마도 Chrome 확장 프로그램이 HTML 파일을 처리하는 대신 Firefox에서 HTML 파일을 여는 것이 좋습니다. 그렇게하면 Firebug를 사용하여 원인을 확인할 수있어 매우 도움이됩니다.

+0

다시 읽으십시오. 상황을 명확하게하기 위해 제 질문을 수정했습니다. – Skizit

+0

Chrome 앱에 대한 나의 이해는 단지 HTML, CSS 및 자바 스크립트이므로 Firefox에서 실행하면 문제가되지 않습니다. 내 대답은 여전히 ​​동일합니다 ... 원래 질문에서 변경 한 내용을 잘 모르겠습니다. – Webnet

0

Google 크롬에는 기본 제공 JavaScript profiler이 있습니다. 아니면 내선 번호로 사용할 수 없습니까? Chrome 확장 프로그램을 만든 적이 없습니다.

9

Chrome에서 페이지를 엽니 다.

도구 -> 개발자 도구 ->이

시작 프로파일 (하단의 상태 표시 줄에 3 버튼, 회색 원) 프로파일은

0

당신은 이전 또는 타임 라인 언급 한대로 프로파일 러를 사용하려고 할 수 있습니다. 시간이 원시 코드에서 소비 된 경우 타임 라인이 도움이 될 것입니다.

관련 문제