这是什么意思" var x = function function_name(){}"?

时间:2016-07-11 02:32:17

标签: javascript

我是JavaScript的新手,我最近开始维护其他人的JavaScript代码。

前面的代码有这个块:

someObject.someFunction1.someFuction$i_2 = function somefunction$i_3(x,y){...}

我想知道它意味着什么?并签署" $"只是意味着一个有效的JavaScript标识符?当我通过Chrome使用consolo时,它会告诉我:

typeof someObject = Object
typeof someObject.someFunction1 = function
typeof someObject.someFunction1.someFuction$i_2 = function
typeof somefunction$i_3 = not defined

我只知道:

var functionOne = function() {
    // Some code
};

但是,我不知道:

x = function function_name(){}

2 个答案:

答案 0 :(得分:3)

这是在javascript中定义函数的方法之一 它通常称为named function expression

var x = function function_name(){
  //Rest of the code
}

但只能通过调用x()而不是function_name()来调用此函数。 function_name只能在函数内部访问&有助于递归

看看this& this

答案 1 :(得分:0)

  1. 在javaScript中处理的$符号与字母相同,因此允许$作为函数名称的一部分。你甚至可以拥有

    函数$(x){...}

  2. 表达式

    x = function function_name(){}

  3. 调用`命名函数表达式,当你想引用自身内部的函数时,它们很有用。更多关于您希望使用命名函数表达式here

    的原因