为什么函数声明语句声明的函数可以在声明之前调用,而函数声明表达式不行 20

 我来答
检怜南0F8
2017-09-15 · TA获得超过305个赞
知道小有建树答主
回答量:290
采纳率:0%
帮助的人:155万
展开全部
var s = function(x) {};

可以拆分为

var s;
s = function(x) {}

其中 var s 被提前了,但 s = xxxx 是要在运行到这里的时候才进行。

为什么函数表达式不能提到前面……因为它是函数表达式,不是函数申明……规定,没有理由。

就像一个世界有他的原理原则是一样的.

M112233445522
2017-09-15 · 超过36用户采纳过TA的回答
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:51万
展开全部
变量函数的声明会提前,自动放到代码最前面,而赋值不会提前
var x=function(){}
function a(){}
此处var x和function a(){}会提前,而赋值函数会在对应的语句位置才进行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式