발신자와 수신자의 차이점 소개 및 시연 결과_기본지식

WBOY
풀어 주다: 2016-05-16 17:40:34
원래의
934명이 탐색했습니다.

발신자

호출자는 현재 함수를 호출하는 함수에 대한 참조를 반환합니다.

이 속성을 사용할 때는 주의하세요:

1 이 속성은 함수가 실행될 때만 유용합니다.
2 자바스크립트 프로그램에서 함수가 최상위 수준에서 호출되면 null이 반환됩니다.

functionName.caller: functionName이 현재 진행 중입니다. 실행된 기능.

코드 복사 코드는 다음과 같습니다.

var a = function() {
alert( a.caller);
}
var b = function() {
a();
}
b();

위 코드에서 b는 a를 호출하고 a.caller는 b에 대한 참조를 반환하며 결과는 다음과 같습니다.

a가 직접 호출되는 경우(즉, a가 임의의 함수, 즉 최상위 호출에서 호출되는 경우) null을 반환합니다.

코드 복사 코드는 다음과 같습니다.

var a = function() {
alert(a.caller);
}
var b = function() {
a( );
//b();
a();

출력 결과:

수신자

호출자는 인수의 속성인 실행 함수 자체에 대한 참조를 다시 넣습니다

호출자 사용 시 주의:

1 이 속성은 함수가 실행될 때만 유효합니다.

2 형식 매개변수의 개수를 구할 수 있는 길이 속성을 가지고 있어 형식 매개변수의 개수와 개수를 비교하는 데 사용할 수 있습니다. 실제 매개변수는 일관적입니다. 즉, 비교args.length가args.callee.length
3과 같은지 여부입니다. 익명 함수를 재귀하는 데 사용할 수 있습니다.

코드 복사 코드는 다음과 같습니다.
var a = function() {
alert(args.callee);
}
var b = function() {
a();
}
b();

a in b가 호출되었지만 a 자체에 대한 참조를 반환하고 결과는 다음과 같습니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿