본문 바로가기

JavaScript/기본

[Javascript] 함수를 정의하는 방법 4가지

1. function 키워드로 선언

.해당함수 이름으로 함수가 만들어진다

function hello(name){
	document.write(name, ' 님 안녕하세요');
}
hello();

 

2. 함수 리터럴 방식

.변수에 함수를 생성해 할당하는 방식
.변수에 함수가 저장된다

var hello = function (name){
	document.write(name, ' 님 안녕하세요');
}
hello();

 

3. 익명함수 방식

.함수를 생성하는 즉시 해당 함수를 호출하는 방식이다
.외부에서 해당 함수에 접근할 수 없다, 즉 함수를 재사용할 수 없다
.다른 함수와 동일한 이름 혹은 사용하는 변수 이름이 겹치는 등 함수간 충돌을 방지할 목적으로 사용

 

*문법

.( 괄호 )안에 함수 선언식을 작성하고 이어 ( 매개값 )을  넣어주면 된다
.매개값이 없으면 ( )는 공백으로 주면 된다.

(function( 매개변수 ){
	return 리턴값;
})( 매개값 );

 

*example

(function hello(name){
	document.write('<h2>', name, ' 님 안녕하세요<h2>');
})('홍길동');

(function answer(){
	document.write('<h2>응 안녕!<h2>');
})();

 

*결과

홍길동 님 안녕하세요
응 안녕!

 

 


4. 객체 방식

.새로운 객체로 함수를 선언하는 방식이다
.앞서 설명한 리터럴 방식을 쓰면 자동으로 변환(=암시적 형변환)이 일어나기 때문에 객체 방식처럼 긴 코드 방식은 거의 사용하지 않는다

 

var hello = new Function( console.log('hello world') );
hello();

 

'JavaScript > 기본' 카테고리의 다른 글

[Javascript] 콜백 함수(callback function)  (0) 2022.04.13
[Javascript] 변수에 함수 대입하기  (0) 2022.04.09