在Javascript中使用函数

时间:2012-04-28 18:50:27

标签: javascript

在下面的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 个答案:

答案 0 :(得分:2)

这是一个anonymous function

从上面的链接引用:

  

使用函数运算符声明匿名函数。您可以   使用函数运算符创建一个有效的新函数   表达。例如,您可以将新函数声明为   函数调用的参数或分配另一个的属性   对象

这是一个使用函数语句以常规方式声明函数的示例:

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

这是一个使用函数运算符动态声明相同函数的示例:

var eatCakeAnon = function() {
    alert("So delicious and moist");
};
eatCakeAnon();

答案 1 :(得分:2)

它是一个函数文字。它就像一个函数一样 1 ,但没有名字;它只是一个对象,就像JavaScript中的其他所有东西一样,特殊的部分就是你可以调用它。在此处,它会立即分配到getReview,因此您可以致电getReview()来调用此功能。

1 实际上,它的定义不会被提升,但你不必为此担心。

相关问题