Javascript의 함수 유형: 1. 생성자, new 키워드를 사용하여 호출할 함수를 정의하고 기본적으로 새 객체를 반환합니다. 2. 실제 이름이 없는 함수인 익명 함수는 전역 변수를 오염시키지 않습니다. . 클로저 함수, 다른 함수 범위의 변수에 액세스할 수 있는 권한이 있는 함수 4. 동적 함수, 매개변수 목록 및 함수 본문은 문자열을 통해 동적으로 지정되는 함수입니다.
이 튜토리얼의 운영 환경: Windows 10 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.
1. 생성자
Javascript의 생성자는 기본적으로 새 객체를 반환하는 new 키워드를 사용하여 정의되고 호출되는 함수를 의미합니다.
2.익명 기능
Javascript의 익명 함수는 실제 이름이 없는 함수를 참조합니다. 익명 함수를 사용해도 전역 변수가 오염되지 않습니다.
3. 폐쇄 기능
자바스크립트에서 클로저 함수는 다른 함수의 범위에 있는 변수에 접근할 수 있는 권한을 갖는 함수를 의미합니다. 클로저 함수는 함수 내부에서 생성되는 경우가 많습니다.
4.동적 기능
자바스크립트에서 동적 함수란 매개변수 목록과 함수 본문이 문자열을 통해 동적으로 지정되는 함수를 의미합니다.
예는 다음과 같습니다:
<script> function show(){ Alert("첫 번째..."); } function show(str){ Alert("두 번째") } function show(a,b){ Alert("세 번째 . . . "); Alert(a+":"+b); } </script> </head> <!-- 가변 매개변수를 갖는 함수: js에서는 모두 가변 매개변수를 갖는 함수입니다. 1 함수는 2개로 선언되어 있지만 --> <!-- 2 각 함수에는 이 호출 중에 전달된 매개변수를 저장하는 기본 배열 인수가 있습니다. --> <!-- > <body> <!-- 1. 변수 매개변수 시연: --> <script> show();//호출되면 이전 매개변수가 플러시됩니다. //정의되지 않음: 정의되지 않은 show(111);//호출될 때 , 이전 항목은 플러시됩니다.///11:undefine show("a","b");//호출 후 이전 항목은 플러시됩니다.//a:b show(1,2,3,4) ;//1:2 </script>위의 예를 요약하면 JS에는 함수 오버로드가 없습니다. 모두에 대해 와일드카드를 사용해야 합니다. 함수가 정의될 때 여러 변수를 선언하더라도 호출 시 어떤 숫자든 전달될 수 있습니다. 각 함수에는 이 호출 중에 전달된 모든 실제 매개변수를 저장하는 기본 배열 인수가 있습니다.
익명 함수
<!DOCTYPE html> <html> <head> </head> <body> <!-- JavaScript 익명 함수 시연--> <script type="text/javascript"> var res =function(a,b){/ /소문자 func return a+b };</span> Alert("sum="+res(1,2));//sum=3 Alert("res="+res("abc") ," def"));//res=abcdef </script> </body> </html>동적 기능
소개: Js에 내장된 객체인 Function을 사용하여 생성 방법의 첫 번째 매개변수는 "형식 매개변수"이고 두 번째 매개변수는 "함수 본문"입니다.
<span style="font-size:18px;"><!DOCTYPE html> <html> <head> <title>DTfunc.html</title> <meta http-equiv="keywords" content="keyword1,keyword2, 키워드3"> <meta http-equiv="description" content="이것은 내 페이지입니다"> <meta http-equiv="content-type" content="text/html-8"> <!-- <link rel="stylesheet" type="text/css" href="./styles.css">--> </head> <body> <!-- Js에 내장된 객체 Function을 사용하여 생성자의 첫 번째 매개변수는 "형식 매개변수"이고 두 번째 매개변수는 "함수 본문"입니다. --> <!-- 아이디어는 Java의 클래스 리플렉션과 유사합니다. 보통 함수를 작성할 때는 잘 사용하지 않지만 일단 핵심만 작성하면 프로그램 전체의 함수가 매우 유연해집니다. --> <script> var res=new Function("x,y","var sum =0;sum= x+y;return sum;") var sum=res(12,34);//46 var sum=res("abc","bss");//abcbss 경고("sum=" +합계) < /script> </body> </html></span>