>  기사  >  웹 프론트엔드  >  JavaScript에서 호출자 함수의 세부 정보를 확인하는 방법은 무엇입니까?

JavaScript에서 호출자 함수의 세부 정보를 확인하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-20 21:53:02308검색

How to Determine the Details of the Caller Function in JavaScript?

JavaScript에서 호출자 함수 세부정보 검색

함수 호출의 출처를 확인하면 디버깅 및 분석에 대한 귀중한 통찰력을 얻을 수 있습니다. 이 기사에서는 JavaScript에서 호출자 함수의 회선 번호와 소스 URL을 얻는 방법을 살펴봅니다.

발신자의 회선 번호 가져오기

제공된 코드는 호출자의 이름을 효과적으로 검색합니다. Arguments.callee.caller 객체를 사용하는 호출자 함수. 그러나 줄 번호를 얻으려면 다른 접근 방식이 필요합니다. 한 가지 방법은 Error 개체를 활용하는 것입니다.

<code class="js">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);</code>

Error 개체의 stack 속성에는 오류를 발생시킨 함수 호출의 줄 번호와 소스 URL이 포함된 스택 추적이 포함되어 있습니다. 이 문자열을 분석하면 호출자 함수의 행 번호를 추출할 수 있습니다.

발신자의 소스 URL 검색

마찬가지로 스택에서 소스 URL을 얻을 수 있습니다. Error 개체의 속성:

<code class="js">var caller_url = err.stack.split("\n")[4];
var index = caller_url.indexOf("(");
var clean = caller_url.slice(index + 1, caller_url.length - 1);</code>

괄호 사이의 스택 추적 부분에는 호출자 함수의 소스 URL이 포함되어 있습니다.

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

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