>웹 프론트엔드 >JS 튜토리얼 >JavaScript 함수 범위의 개념과 다양한 유형의 JavaScript 함수 살펴보기

JavaScript 함수 범위의 개념과 다양한 유형의 JavaScript 함수 살펴보기

WBOY
WBOY앞으로
2023-09-07 14:41:021083검색

探索 JavaScript 函数作用域的概念和不同类型的 JavaScript 函数

JavaScript에서는 다양한 범위를 사용하여 코드의 다양한 위치에 있는 함수와 변수에 액세스할 수 있습니다. 이번 튜토리얼에서는 함수 범위에 대해 알아 보겠습니다. 또한 JavaScript의 다양한 유형의 함수 표현식을 살펴보겠습니다.

기능 범위

JavaScript에서 새 함수를 생성하면 해당 특정 함수의 범위도 생성됩니다. 즉, 함수 내부에서 선언하거나 그 안에 중첩된 함수를 정의하는 모든 변수는 함수 블록 내에서만 액세스할 수 있습니다.

함수 외부에서 함수 블록 내부에 정의된 변수에 접근하려고 하면 참조 오류가 발생합니다.

문법

다음 구문을 따라 함수를 정의하고 함수 범위를 이해할 수 있습니다.

으아아아

위 구문을 보면 펑션 블록이 변수를 제한하기 때문에 함수 외부의 변수에 접근할 수 없다는 것을 알 수 있습니다.

예 1

이 예에서는 샘플 함수를 만들고 블록 범위를 사용하여 함수 내부에 변수를 정의했습니다. 함수 외부에서 Sample() 함수 내부에 정의된 변수에 액세스하려고 하면 JavaScript에서 참조 오류가 발생합니다.

으아아아

예 2

이 경우 예제 함수에 nested_function()을 정의했습니다. nested_function이 샘플 함수의 범위 내에 있기 때문에 sample() 함수 외부에서 nested_funciton()을 호출할 수 없습니다.

으아아아

JavaScript의 다양한 유형의 함수

함수의 정의와 선언에 따라 다양한 종류의 함수가 있습니다. 여기서는 하나씩 배워보겠습니다.

정상적인 기능

일반 함수는 모든 JavaScript 개발자가 공통적으로 사용하는 함수입니다. 함수 이름 뒤에 function 키워드를 사용하여 일반 함수를 정의할 수 있습니다.

일반 함수는 함수의 현재 범위에서 최상위에 있습니다. 이는 함수를 정의하기 전에 호출할 수 있지만 실행 후에 정의해야 함을 의미합니다.

문법

일반 함수를 정의하려면 다음 구문을 따르세요.

으아아아

위 구문에서는 function 키워드를 사용하여 함수를 정의했습니다. 'function_name'은 함수 이름이며, 중괄호 안에 함수 본문에 대한 코드를 작성할 수 있습니다.

함수 표현

함수 표현식도 일반 함수처럼 작동합니다. 그러나 차이점은 이름이 없으며 함수 표현식을 변수에 저장해야 한다는 것입니다. 식별자를 사용하여 이를 저장하는 함수를 호출할 수 있습니다.

JavaScript는 함수 표현식을 단계별로 평가합니다. 따라서 범위의 최상위로 끌어올려지지 않으므로 선언하기 전에는 호출할 수 없습니다.

문법

함수 표현식을 정의하려면 다음 구문을 따르세요.

으아아아

위 구문에서는 function 키워드만 사용하여 이름 없이 함수를 정의하고 이를 function_identifier 변수에 저장했습니다. 또한 사용자는 function_identifier를 사용하여 함수 표현식을 호출하는 방법을 확인할 수 있습니다.

화살표 기능

화살표 함수는 2015년 JavaScript의 마지막 주요 개정판인 ES6에 도입되었습니다. 함수 이름 없이 함수를 정의하는 더 짧은 구문입니다. 또한 해당 ID가 포함되어 있지 않기 때문에 표현식 및 익명 함수라고 합니다.

문법

화살표 함수를 정의하려면 다음 구문을 따르세요.

으아아아

위 구문에서는 화살표 함수 표현식을 function_identifier에 저장합니다. 또한 function_identifier 변수를 사용하여 함수를 호출하는 동안 화살표 함수 내부에 인수와 인수를 전달했습니다.

닫기 기능

JavaScript에서 중첩 함수를 만들고 하위 함수를 사용하여 상위 함수 변수에 액세스할 수 있습니다. 자식 함수에는 부모 함수의 범위에 정의된 모든 변수에 대한 액세스가 포함되어 있으므로 자식 함수를 클로저 함수라고 부를 수 있습니다.

문법

으아아아

위 구문에서는 하위 함수 내에서 상위 함수의 모든 변수에 액세스할 수 있으며, 상위 함수는 하위 함수를 반환합니다. 따라서 부모 함수의 범위 내에 정의되어 있더라도 부모 함수 외부에서 간접적으로 자식 함수를 호출할 수 있습니다.

생성자

문법

생성자를 사용하여 객체를 만들 수 있습니다.

으아아아

위 구문에서는 생성자의 객체를 생성합니다.

이 튜토리얼에서는 두 가지 예를 통해 중첩 함수에 대한 함수 범위 지정이 어떻게 작동하는지 배웠습니다. 또한 다양한 유형의 함수에 대해 배웠습니다. 또한 사용자가 인터넷에서 탐색할 수 있는 재귀 또는 콜백 함수와 같은 다른 유형의 함수도 있습니다.

위 내용은 JavaScript 함수 범위의 개념과 다양한 유형의 JavaScript 함수 살펴보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제