2012-04-28 3 views
0

다음 자바 스크립트 코드에서 명령 함수를 사용하고 있지만 함수의 이름을 지정하지 않았습니다. 이게 뭐야?Javascript에서 함수를 사용하십시오.

var getReview = function(movie) { 
    switch (movie) { 

    case "Matrix": 
     return "good trip out"; 
     break; 
    case "Princess Bride": 
     return "awesome date night movie"; 
     break; 
    case "Welcome to America": 
     return "Amjad's favorite"; 
     break; 
    case "Remember the Titans": 
     return "love the sports"; 
     break; 
    case "Why do I look like I'm 12?": 
     return "The Ryan and Zach story"; 
     break; 
    case "Fighting Kangaroos in the wild": 
     return "Token Australian movie for Leng"; 
     break; 
    default: 
     return "I don't know!"; 
    } 
};​ 

답변

2

이것은 anonymous function입니다.

익명 함수 함수 연산자를 이용하여 선언된다 : 위 링크 인용

. 함수 연산자를 사용하여 표현식을 넣는 유효한 이있는 곳 어디에서나 새 함수를 만들 수 있습니다. 예를 들어 새 함수를 매개 변수로 선언하거나 다른 개체의 속성을 할당 할 수 있습니다.

var eatCakeAnon = function() { 
    alert("So delicious and moist"); 
}; 
eatCakeAnon(); 
: 동일한 기능 함수 연산자를 사용하여 동적으로 선언 일례를 여기

function eatCake() { 
    alert("So delicious and moist"); 
} 
eatCake(); 

같습니다

여기에서는 함수 문을 사용하여 일반적인 방법으로 선언 된 예제

2

함수 리터럴입니다. 정확히 과 같은 기능이지만 이름은 없습니다. 자바 스크립트의 다른 모든 객체와 마찬가지로 객체 일뿐입니다. 호출 할 수있는 특별한 부분이 있습니다. 여기서는 즉시 getReview에 할당되므로 getReview()으로 전화하여 해당 기능을 호출 할 수 있습니다.

실제로 그 정의는 호이스트되지 않지만 걱정할 필요가 없습니다.

관련 문제