Taggon in Happy Life

JavaScript, PHP, jQuery, Mobile and Talk

[코딩팁] JS 함수 리터럴을 실행하는 방법

자바스크립트에는 다음과 같이 표현하는 함수 리터럴이 있습니다.

function(){
    alert('Run!');
}

함수 리터럴은 다른 함수에 인수로서 사용되기도 하지만, 독립적으로 실행되기도 합니다. 독립적으로 실행할 때는 주로 다음과 같이 함수 리터럴 양쪽을 괄호로 감싼 후 다시 괄호 한 쌍을 추가해주는 방식을 주로 사용합니다.

(function(){
    alert('Run!');
})();

여기서 함수 리터럴을 감싸는 괄호가 없으면 에러가 발생하기 때문에 괄호는 반드시 필요합니다. 하지만, 괄호가 너무 많아서 보기에 좋지 않다 싶으면 다음과 같은 방법을 통해 괄호를 생략할 수도 있습니다.

!function(){
    alert('Run!');
}();

사실 ! 대신+-를 붙여도 상관없습니다. 중요한 것은 function() 앞에 의미없는 연산 등을 추가하면 된다는 것입니다. 그래서, 앞서 말한 것보다는 지저분하지만 다음과 같은 방법도 사용할 수 있습니다.

// with comma
0,function(){
    alert('Run!');
}();
// with AND operation
1&function(){
    alert('Run!');
}();
// with multiplication
2*function(){
    alert('Run!');
}();

이 팁을 활용하면 코드를 조금 더 깔끔하게 만들 수 있겠습니다.

, ,

5 thoughts on “[코딩팁] JS 함수 리터럴을 실행하는 방법

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>