JavaScript

함수 - function

코딩공부 2020. 9. 10. 20:22

 

1. 함수 선언식(function declaration)

function test(){

}

함수 선언식은 script가 로딩되는 시점에서 초기화하고 이것을 VO에 저장한다.

따라서 함수 선언 위치와 상관 없이 어디서든 호출하여 사용 가능하다.

 

2. 익명 함수 표현식(annoymous function expresstion)

var test = function(){

}

test(); // 함수호출

익명 함수 표현식은 함수를 정의하고, 변수에 함수를 저장하고 실행하는 과정을 거친다.

함수는 객체 라는 정의가 가능하다. 함수 선언식과는 달리 Runtime 시에 함수가 해석되고 실행된다.

 

 

cf) 런타임, 컴파일 타임

컴파일 타임 - 프로그램을 생성하기 위해 개발자는 먼저 소스코드를 작성하고 컴파일이라는 작업을 통해 기계어 코드로 변환되어 실행 가능한 프로그램이 된다. 이러한 편집 과정을 컴파일 타임이라고 부른다.

 

런타임 - 컴파일 과정을 마친 프로그램은 사용자에 의해 실행되어지며, 이러한 응용프로그램이 동작되는 때를 런타임이라고 한다.

 

3. 익명 즉시 실행 함수(immediately-invoked function expresstion)

(function() {


}());

익명 즉시 실행 함수는 함수 표현식과 달리 일련의 과정을 거치지 않고 즉시 실행되는 코드이다.

Global Namespace에 변수를 추가하지 않아도 되기 때문에 코드 충돌 없이 구현할 수 있어서 플러그인이나 라이브러리 등을 만들 때 많이 사용된다.

-  jQuery plugin 작성 시 적용하는 초기 구조

(function(W, D) {

}(window, document));

jQuery 플러그인jQuery의 프로토타입 객체를 확장하는 새로운 메서드를 추가하는 것

새로 추가한 기능은 jQuery의 모든 기능을 상속받아 바로 사용할 수 있다.

'JavaScript' 카테고리의 다른 글

$(document).ready() VS $(window).load() 의 차이  (0) 2020.09.10
객체 - Getter와 Setter 함수  (0) 2020.09.07
객체 - 객체 안에 함수 넣기  (0) 2020.09.07
객체 - 비구조화 할당  (0) 2020.09.07
객체  (0) 2020.09.07