> 웹 프론트엔드 > JS 튜토리얼 > YUI.Ext_YUI.Ext 관련 학습 둘째 날

YUI.Ext_YUI.Ext 관련 학습 둘째 날

WBOY
풀어 주다: 2016-05-16 19:17:11
원래의
1295명이 탐색했습니다.

JS를 사용하다 문법적인 문제가 몇 가지 발생했는데, 제대로 이해하지 못해서 기초를 보충해야 했어요!



익명 함수 익명 함수

이름이 없는 익명 함수를 "익명 함수"라고 합니다. 예를 들어 x y}

이름 없음 , 물론 직접 호출하거나 호출할 수는 없습니다. 기껏해야 값을 할당하거나 클로저로 처리할 수 있습니다(클로저에 대해서는 아래에서 설명합니다).

var sum =function( x,y){return x y};

alert(sum(1,2))

이번에는 전통적인 쓰기 함수 sum(x,y ){ return x y}. sum 변수에 함수가 포함되어 있기 때문에 사람들은 더 OOP적인 느낌을 받습니다.

함수는 클로저 방식으로도 호출할 수 있습니다. >(functioin(x,y){return x y})(1,2) //반환값 3

코드가 매우 간결합니다. (exp)() 형식의 괄호 사용에 유의하세요. 이 사용법을 클로저라고 부를 수 있습니다.
다음 괄호는 매개변수입니다. 이 매개변수를 fn에 넣고 즉시 계산하여 값 3을 얻습니다. 이는 실제로 표현식 작업입니다. 의외로 fn 함수 본문을 넣어 계산에 참여할 수도 있습니다^_^ (함수를 표현식으로 사용)! (기본 스킬: 표현식, 즉 표현식의 길이에 관계없이 계산 후에 항상 값이 반환된다는 의미)

fn은 매개변수 형식으로도 전달할 수 있습니다(함수를 다른 인자로 전달) 함수)

var main_fn = 함수(fn,x,y){return fn(x,y)}

var sum = 함수(x,y){
return x y;
}

alert(main_fn(sum,1,2)) // 결과:3

요약(IBM 엔지니어의 기사에 따르면 IBM 웹사이트를 참조하세요. 기억하는 것이 가장 좋습니다. )

함수에는 항상 이름이 있을 필요가 없습니다.

함수는 다른 값과 마찬가지로 변수에 할당될 수 있습니다.

함수 표현식은 괄호로 묶어 작성할 수 있습니다.

함수는 다른 함수에 인수로 전달될 수 있습니다.

클로저에 대해 다시 이야기해 보겠습니다. 클로저의 기능은 도메인을 형성하는 것입니다. 2 3) 괄호는 우선순위가 정해져 있습니다. 즉, 괄호 안의 내용은 범위로 분류됩니다. 이 범위 내에서 무엇을 하든 상관없습니다. 그 안에서 무엇을 하든 상관없습니다. 괄호의 외부 세계와 관련이 있습니다 (말도 안되는 것 같습니다. - 제 생각에는 그렇습니다) @#@라고 쓰여 있습니다. 프로그램 이해에도 마찬가지입니다. JS에는 함수 범위가 있으므로 이를 사용하여 객체를 가리키는 데 문제가 있는 경우 클로저 사용을 고려할 수 있습니다. 구체적인 예는 http://www.svendtofte.com/code/practical_function_js/에 있습니다.

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