웹 프론트엔드 JS 튜토리얼 JavaScript의 익명 함수란 무엇입니까?

JavaScript의 익명 함수란 무엇입니까?

Apr 28, 2018 am 11:21 AM
js 익명 함수

이 글에서는 JavaScript의 익명 함수가 무엇인지 소개하겠습니다. 이 글을 읽은 후 JavaScript의 익명 함수의 개념과 사용법을 어느 정도 이해할 수 있기를 바랍니다.

JavaScript의 익명 함수란 무엇입니까?

JavaScript에서 익명 함수란 무엇인가요?

프런트엔드 면접에서 면접관들은 기본적으로 익명함수와 클로저함수가 무엇인지 묻습니다.

이 기사에서는 먼저 익명 기능이 무엇인지 설명합니다.

이름에서 알 수 있듯이 익명 함수는 이름이 없는 함수입니다. 일반적으로 우리가 작성하는 함수는 다음과 같습니다.

function do(){
  // 执行代码  
};
// 调用
do();
로그인 후 복사

이러한 작성 방법은 do라는 함수를 정의하고 함수 이름을 통해 호출하는 것입니다.

이름이 없으면 어떨까?

function () {
   // 执行代码   
 };
로그인 후 복사

이렇게 작성하면 컴파일 시 오류가 보고됩니다.

Uncaught SyntaxError: Unexpected token (
로그인 후 복사

왜 그렇죠? 브라우저가 구문 분석을 수행할 때 이 기능을 전혀 실행할 수 없다는 사실이 밝혀졌습니다.

그럼 익명함수는 왜 필요한가요? 프로그래밍 언어에 다른 코딩 방법이 있다면 이 코딩 방법은 확실히 정상적으로 실행될 것입니다. 그렇다면 익명 함수를 실행하려면 어떻게 해야 할까요? 다음 예를 보세요.

var do = function () {  // 执行代码  }do();
로그인 후 복사

이런 함수는 꼭 알아야 합니다. 사실 이런 작성 방법은 익명 함수를 do 변수에 복사한 후, 변수 이름을 통해 함수를 실행하는 것입니다.

(function(){   // 执行代码 
  console.log("打印成功");
})();
로그인 후 복사

위 코드는 무엇을 의미하나요?

먼저 위의 코드를 여러 부분으로 나눌 수 있습니다.

첫 번째 부분은 괄호 안의 익명 함수이고, 두 번째 부분은 괄호가 있는 익명 함수이며, 세 번째 부분은 최종 실행을 위한 괄호가 있습니다.

괄호 안의 익명 함수는 익명 함수를 변수로 취급하여 괄호를 통해 실행한다고 볼 수 있습니다.

(function () {
   // 执行代码 
})();

// 相当于
var do = function() {
   // 执行代码  
};

do();
로그인 후 복사

사실 위의 익명 함수 작성 방법은 여러 곳에서 사용됩니다. 이 유형은 JQuery와 같은 일부 툴킷에서 이 작성 방법을 사용합니다.

// 定义一个全局变量a
var a = 1;

(function() {
  // 在自执行函数中也创建一个变量a
  var a = 2;
   console.log(a);  // 2
})();

console.log(a); // 1
로그인 후 복사

자체 실행 함수에 인쇄된 숫자는 2이고, 자체 실행 함수에 인쇄된 숫자는 1인 것을 볼 수 있습니다.

왜 그럴까요?

프로그램에 Scope라는 이름이 있기 때문에 전역 환경의 범위를 전역 범위, 함수 내의 범위를 함수 범위라고 하며 범위는 계층적이며 내부 범위는 액세스할 수 있습니다. 외부 범위 범위 내의 변수이지만 내부 범위의 변수는 외부 범위에서 액세스할 수 없습니다.

내부 범위의 변수에 접근할 경우 해당 변수를 먼저 검색하고, 찾을 수 없으면 상위 범위에서 검색합니다. 전역 범위를 찾을 때까지. 이러한 레이어별 관계는 체인과 같아서 범위 체인이라고 합니다.

위 코드를 다시 살펴보세요. 자체 실행 함수에서 console.log 함수는 먼저 자체 범위에서 검색하여 a 변수를 찾으므로 a의 값은 2입니다. 전역 환경에서는 로그 함수도 a 변수에 접근하므로 외부 범위에서는 내부 범위에 접근할 수 없으므로 전역 환경에서 접근한 a 변수는 전역 함수 환경에서만 조회할 수 있으므로 a의 값이 출력된다. . 1;

요약: 자체 실행 함수의 장점은 자체 실행 함수의 변수가 다른 환경에 의해 오염되지 않도록 한다는 것입니다.

이 기사는 js tutorial 칼럼에서 가져온 것입니다. 배우신 것을 환영합니다!

위 내용은 JavaScript의 익명 함수란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

권장 사항: 우수한 JS 오픈 소스 얼굴 감지 및 인식 프로젝트 권장 사항: 우수한 JS 오픈 소스 얼굴 감지 및 인식 프로젝트 Apr 03, 2024 am 11:55 AM

얼굴 검출 및 인식 기술은 이미 상대적으로 성숙하고 널리 사용되는 기술입니다. 현재 가장 널리 사용되는 인터넷 응용 언어는 JS입니다. 웹 프런트엔드에서 얼굴 감지 및 인식을 구현하는 것은 백엔드 얼굴 인식에 비해 장점과 단점이 있습니다. 장점에는 네트워크 상호 작용 및 실시간 인식이 줄어 사용자 대기 시간이 크게 단축되고 사용자 경험이 향상된다는 단점이 있습니다. 모델 크기에 따라 제한되고 정확도도 제한됩니다. js를 사용하여 웹에서 얼굴 인식을 구현하는 방법은 무엇입니까? 웹에서 얼굴 인식을 구현하려면 JavaScript, HTML, CSS, WebRTC 등 관련 프로그래밍 언어 및 기술에 익숙해야 합니다. 동시에 관련 컴퓨터 비전 및 인공지능 기술도 마스터해야 합니다. 웹 측면의 디자인으로 인해 주목할 가치가 있습니다.

주식 분석을 위한 필수 도구: PHP 및 JS를 사용하여 캔들 차트를 그리는 단계를 알아보세요. 주식 분석을 위한 필수 도구: PHP 및 JS를 사용하여 캔들 차트를 그리는 단계를 알아보세요. Dec 17, 2023 pm 06:55 PM

주식 분석을 위한 필수 도구: PHP 및 JS에서 캔들 차트를 그리는 단계를 배우십시오. 인터넷과 기술의 급속한 발전으로 주식 거래는 많은 투자자에게 중요한 방법 중 하나가 되었습니다. 주식분석은 투자자의 의사결정에 있어 중요한 부분이며 캔들차트는 기술적 분석에 널리 사용됩니다. PHP와 JS를 사용하여 캔들 차트를 그리는 방법을 배우면 투자자가 더 나은 결정을 내리는 데 도움이 되는 보다 직관적인 정보를 얻을 수 있습니다. 캔들스틱 차트는 주가를 캔들스틱 형태로 표시하는 기술 차트입니다. 주가를 보여주네요

PHP와 JS를 사용하여 주식 촛대 차트를 만드는 방법 PHP와 JS를 사용하여 주식 촛대 차트를 만드는 방법 Dec 17, 2023 am 08:08 AM

PHP와 JS를 사용하여 주식 캔들 차트를 만드는 방법 주식 캔들 차트는 주식 시장에서 흔히 사용되는 기술 분석 그래픽으로 시가, 종가, 최고가 등의 데이터를 그려서 투자자가 주식을 보다 직관적으로 이해할 수 있도록 도와줍니다. 주식의 최저 가격. 이 기사에서는 특정 코드 예제와 함께 PHP 및 JS를 사용하여 주식 캔들 차트를 만드는 방법을 설명합니다. 1. 준비 시작하기 전에 다음 환경을 준비해야 합니다. 1. PHP를 실행하는 서버 2. HTML5 및 Canvas를 지원하는 브라우저 3

C++ 익명 함수의 사용법과 특징 C++ 익명 함수의 사용법과 특징 Apr 19, 2024 am 09:03 AM

람다 식이라고도 하는 익명 함수는 이름을 지정하지 않고 일회용으로 사용하거나 함수 포인터를 전달하는 데 사용되는 함수입니다. 기능에는 익명성, 일회용 사용, 폐쇄, 반환 유형 추론이 포함됩니다. 실제로는 정렬이나 기타 일회성 함수 호출에 자주 사용됩니다.

PHP 및 JS 개발 팁: 주식 캔들 차트 그리기 방법 익히기 PHP 및 JS 개발 팁: 주식 캔들 차트 그리기 방법 익히기 Dec 18, 2023 pm 03:39 PM

인터넷 금융의 급속한 발전으로 인해 주식 투자는 점점 더 많은 사람들의 선택이 되었습니다. 주식 거래에서 캔들 차트는 주가의 변화 추세를 보여주고 투자자가 보다 정확한 결정을 내리는 데 도움이 되는 일반적으로 사용되는 기술적 분석 방법입니다. 이 기사에서는 PHP와 JS의 개발 기술을 소개하고 독자가 주식 캔들 차트를 그리는 방법을 이해하도록 유도하며 구체적인 코드 예제를 제공합니다. 1. 주식 캔들 차트의 이해 주식 캔들 차트를 그리는 방법을 소개하기 전에 먼저 캔들 차트가 무엇인지부터 이해해야 합니다. 캔들스틱 차트는 일본인이 개발했습니다.

js와 vue의 관계 js와 vue의 관계 Mar 11, 2024 pm 05:21 PM

js와 vue의 관계: 1. 웹 개발의 초석인 JS 2. 프론트엔드 프레임워크로서의 Vue.js의 등장 3. JS와 Vue의 상호 보완적인 관계 4. JS와 Vue의 실제 적용 Vue.

Golang 익명 함수는 여러 값을 반환할 수 있나요? Golang 익명 함수는 여러 값을 반환할 수 있나요? Apr 13, 2024 pm 04:09 PM

예, Go 언어의 익명 함수는 여러 값을 반환할 수 있습니다. 구문: func(arg1,arg2,...,argN)(ret1,ret2,...,retM){//함수 본문}. 사용법: 반환 값을 받으려면 := 연산자를 사용하고, 여러 값을 반환하려면 return 키워드를 사용하세요.

Python 람다 표현식: 프로그래밍을 더 쉽게 만들기 Python 람다 표현식: 프로그래밍을 더 쉽게 만들기 Feb 19, 2024 pm 09:54 PM

Python Lambda 표현식은 변수에 표현식을 저장하고 해당 값을 반환하는 작은 익명 함수입니다. 람다 표현식은 별도의 함수를 작성하여 수행할 수 있는 간단한 작업을 수행하는 데 자주 사용되지만, 람다 표현식을 사용하면 코드를 더 간결하고 읽기 쉽게 만들 수 있습니다. Lambda 표현식의 구문은 다음과 같습니다. 람다 인수: 표현식 인수는 람다 표현식에서 수신한 매개변수 목록이고 표현식은 실행해야 하는 코드가 포함된 람다 표현식의 본문입니다. 예를 들어 다음 Lambda 표현식은 두 숫자를 더하고 해당 합계를 반환합니다.

See all articles