javascript - JavaScript 函数的类型

标签 javascript function variables typeof

当我这样声明一个函数时:

function x() { return 123 };

然后:

typeof x; //return "function"
typeof x(); //return "number"

没关系,但是一旦我创建了这样的变量:

var y = function x() { return 123 };

它变成了:

typeof y; //return "function"
typeof y(); //return "number"
typeof x; //return "undefined"
typeof x(); //return error

为什么 x 失去了他的功能?请帮忙

最佳答案

Why does x lose his function?

函数声明在当前范围内创建同名变量。

命名函数表达式不会(某些旧版本的 Internet Explorer 除外,这是一个错误)。

这就是函数表达式应该如何工作。

关于javascript - JavaScript 函数的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30284701/

相关文章:

javascript - 当另一个变量变为 false 时覆盖一个变量 Angular.js

mysql - 如何使用变量来完成存储过程中的插入

javascript - 使用 Javascript(刷新)在一天中的特定时段显示和隐藏 Div

Javascript 将功能添加到影子根中的自定义元素

javascript - 提高 MongoDB 文本搜索性能

python - Python 中的下划线索引

c++ - Noobish 阵列问题 : Run-Time Check Failure #2 - Stack around the variable 'arr' was corrupted

python - 如何限制输出的最大字符数?

javascript - 使用 ng-model 更新数字边界

Python 基础 : How can i set two function parameters in equations?