익명 함수의 기본 형태는 (function(){...})()입니다. 첫 번째 괄호는 함수 본문을 포함하고 다음 괄호는 익명 함수에 매개변수를 전달하고 즉시 실행하는 함수입니다. 익명 함수는 전역 변수의 오염과 함수 이름 충돌을 방지하는 것입니다.
1. 괄호의 역할
괄호는 표현식 조합을 블록으로 나눌 수 있으며, 각 블록, 즉 각 괄호 쌍에는 반환 값이 있습니다. 이 반환 값은 실제로 괄호 안의 표현식의 반환 값입니다. 따라서 익명 함수를 묶기 위해 한 쌍의 괄호를 사용할 때 실제로 반환되는 것은 익명 함수의 Function 개체입니다. 따라서 괄호 쌍과 익명 함수는 명명된 함수처럼 참조됩니다. 따라서 이 참조 변수 뒤에 매개변수 목록을 추가하면 일반 함수의 호출 형식이 구현됩니다.
간단히 말하면 괄호에는 반환값이 있는데, 이는 괄호 안의 함수나 표현식의 반환값이므로 괄호 안의 함수의 반환값은 괄호의 반환값과 같습니다
2. 익명 함수 작성
방법 1, 함수를 호출하고 반환 값을 가져옵니다. 강제 연산자는 함수 호출이
(function(x,y){
alert(x+y);
return x+y;
}(3,4)); 함수를 호출하고 반환 값을 가져옵니다. 함수를 직접 실행하고 참조를 반환한 다음 참조를 호출하여 실행합니다
(function(x,y){
alert(x+y);
return x+y;
})( 3,4) ;
이 방법은 jQuery 및 Mootools와 같은 많은 라이브러리에서 자주 사용되는 호출 방법이기도 합니다.
방법 3, void
void function(x) 사용 {
x = x-1;
alert(x);
}(9);
방법 4, -/+ 연산자 사용
- 함수(x,y){
alert(x+y);
return x+y;
}(3,4);
+function(x,y){
alert(x+y ) ;
return x+y;
}(3,4);
--function(x,y){
alert(x+y);
return x+y;
}(3 , 4);
++function(x,y){
alert(x+y);
return x+y;
}(3,4);
방법 5, 물결표(~ ) 사용
~function(x, y) {
alert(x+y);
return x+y;
}(3, 4);
방법 6, 익명 함수 실행은 대괄호 안에 배치됩니다
[function(){
console.log(this) // 브라우저는 콘솔 창을 출력해야 합니다
}(this)]
방법 7, 익명 앞에 typeof
typeof function(){
console을 추가합니다. function .log(this) // 브라우저는 콘솔 창을 출력해야 합니다
}(this)
방법 8, 익명 함수 앞에 삭제를 추가하세요
delete function(){
console.log(this) // 브라우저는 콘솔 출력 창
}(this)
Method 9, add void
void function(){
console.log(this) // 브라우저는 콘솔 출력 창
}(this)을 먼저 해야 합니다. 익명 함수
메서드 10, 새 메서드 사용, 매개변수 전달
new function(win){
console.log(win) // window
}(this)
메서드 11, 새 메서드 사용, 전달 안 함 매개변수
new function(){
console.log(this) // 여기는 window가 아닙니다
}
메소드 12, 쉼표 연산자
function(){
console.log(this) // window
}();
모드 13, 비트 XOR 연산자
^function(){
console.log(this) // window
}();
모드 14, 비교 연산자
function() {
console.log(this) // window
}();
마지막으로 잘못된 호출 방법을 살펴보세요
function(x,y){
alert(x+y);
return x+ y;
}(3,4);
익명 함수를 작성하는 N가지 방법은 다음과 같습니다.
익명 함수에는 실제 이름도 없고 포인터도 없습니다.
익명 함수를 작성하는 방법은 매우 다양해요~
+ 기호는 함수 선언을 함수 표현식으로 변환하는 것입니다.
의 가장 일반적인 용도를 요약해 보겠습니다.
코드는 다음과 같습니다.
(function() {
alert('water');
})(); 매개변수:
코드는 다음과 같습니다:
(function(o) {
alert(o);
})('water')
익명 함수의 체인 호출을 사용하고 싶으십니까? 매우 간단합니다:
코드는 다음과 같습니다:
(function(o) {
console.log(o);
returnargs.callee;
})('water')('down');
공통 우리는 모두 익명 함수를 알고 있습니다. 흔하지 않은 함수를 살펴보겠습니다.
코드는 다음과 같습니다:
~(function(){
alert('water');
})() ;//글이 좀 멋지네요~
코드는 다음과 같습니다.
void function(){
alert('water')
}();//가장 효율적이라고 합니다. ~
코드는 다음과 같습니다.
+function(){
alert('water' )
}()
코드는 다음과 같습니다.
-function(){
alert( '물');
}();
코드는 다음과 같습니다:
alert('물'); ();
코드는 다음과 같습니다:
(function() {
alert('water');
}());//약간 강제집행 같은 느낌~
관련 추천 :
위 내용은 JS 익명 함수를 이해하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!