>  기사  >  웹 프론트엔드  >  JavaScript에서 호출자 함수 세부 정보(라인 번호 및 소스 URL)를 추적하는 방법은 무엇입니까?

JavaScript에서 호출자 함수 세부 정보(라인 번호 및 소스 URL)를 추적하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-20 21:53:30829검색

How to Trace Caller Function Details (Line Number and Source URL) in JavaScript?

JavaScript에서 호출자 세부 정보 추적: 행 번호 및 소스 URL

행 번호 및 소스 URL을 포함하여 호출자 기능의 세부 정보를 추적하려면, 다음 접근 방식을 고려하세요.

호출자 함수 이름 가져오기:

<br>var callerFunc =args.callee.caller.toString();<br>callerFuncName = (callerFunc.substring(callerFunc.indexOf("function") 8, callerFunc.indexOf("(")) || "anoynmous")<br>

이 코드 스니펫은 호출자 함수의 이름을 가져옵니다.

발신자 회선 번호 검색:

발신자 함수가 호출된 행 번호를 가져오려면:

function getErrorObject() {
    try {
        throw Error('');
    } catch (err) {
        return err;
    }
}

var err = getErrorObject();
var caller_line = err.stack.split("\n")[4];
var index = caller_line.indexOf("at ");
var clean = caller_line.slice(index + 2, caller_line.length);

이 방법은 JavaScript 오류 개체의 스택 속성을 활용하여 호출자의 회선 번호에 액세스합니다.

발신자 소스 URL 확인:

안타깝게도 그렇지 않습니다. 호출자 함수에서 직접 소스 URL을 얻는 것은 간단합니다. 그러나 소스 맵이 있는 webpack과 같은 번들러를 사용하여 번들 코드와 소스 파일 간의 매핑을 생성하여 호출자의 줄 번호를 원래 소스 위치에 매핑할 수 있습니다. .

위 내용은 JavaScript에서 호출자 함수 세부 정보(라인 번호 및 소스 URL)를 추적하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.