定义function语句2种情况的差别
一、function foo(){}
二、var foo=function{};
第一种情况在哪定义都可以,第二种,必须放在使用的前面。
第二种情况明确表示foo是一个包含一个函数值的变量。函数就是数值。
function语句在解析时会被提升。不管function放置在哪里,他都会移动到被定义时所在作用域的顶层。这放宽了 函数必须先声明后使用的要求。
一个语句不能以一个函数表达式开头,因为官方假定单词function 开头的语句是一个function 语句,解决方法是函数表达式扩在圆括号内。
(function(){
var a;
//这个函数可能对环境产生影响,但不会引入新的全局变量。
}
)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步