亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么函數聲明語句聲明的函數可以在聲明之前調用,而函數聲明表達式不行

為什么函數聲明語句聲明的函數可以在聲明之前調用,而函數聲明表達式不行

慕的地8271018 2018-09-11 09:09:36
函數聲明語句: function f(x){...}函數聲明表達式:var s = function(x){...};按照書中說的,函數聲明語句聲明函數實際是聲明了一個變量f,然后將一個聲明的函數對象賦值給變量f,變量的聲明有提至所有代碼頂部的特點,故函數聲明語句聲明的函數可以在聲明之前調用。但我不明白,函數聲明表達式聲明函數時,也是將一個函數對象賦值給變量s啊,為什么不能提至頂部呢?核心的原理不太明白,請大神賜教
查看完整描述

1 回答

?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

var s = function(x) {};

可以拆分為

var s;
s = function(x) {}

其中 var s 被提前了,但 s = xxxx 是要在運行到這里的時候才進行。

為什么函數表達式不能提到前面……因為它是函數表達式,不是函數申明……規定,沒有理由。


查看完整回答
反對 回復 2018-09-28
  • 1 回答
  • 0 關注
  • 774 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號