函数表达式与函数声明之间的区别

函数声明与函数表达式的区别一直没有搞清楚,现在就来梳理一下

定义一个函数,又是三种方法:

  • 函数声明

  • 函数表达式

  • 通过new function构造函数(这种用来生成对象,与题目无关,略)


接下来我们回到主题,函数声明与函数表达式的区别在哪里?


区别:

  • 形式不同;
函数声明:
function  declaration(){
    console.log('这是函数声明')
}

函数表达式:
var expression = function(){
    console.log('这是函数表达式')
}
  • 函数声明可以省略标识符(函数名),但是函数表达式必须要有标识符(函数名)

函数表达式省略标识符(函数名)的情况你肯定见过:

function (){
    console.log('这是函数声明')
}

但是函数表达式省略标识符(函数名)的情况你见过吗:

var  = function(){
    console.log('这是函数表达式')
}

肯定没见过吧。

  • 函数声明要提前(最大区别)

函数声明是在预执行期执行的,就是说函数声明是在浏览器准备执行代码的时候执行的。因为函数声明在预执行期被执行,所以到了执行期,函数声明就不再执行(人家都执行过了自然就不再执行了)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 大家好,我是IT修真院萌新分院的张晓琳,一枚正直、纯洁、善良的前端程序员。 今天给大家分享一下,修真院官网任务js...
    Demon_0481阅读 865评论 0 0
  • 前言 人生苦多,快来 Kotlin ,快速学习Kotlin! 什么是Kotlin? Kotlin 是种静态类型编程...
    任半生嚣狂阅读 26,276评论 9 118
  • 这篇文章主要介绍了JavaScript中的函数声明和函数表达式区别浅析,本文总结的浅显易懂,非常好的一篇技术文章,...
    宁骥阅读 573评论 0 1
  • 本周计划与小结 ‌时时记录–必须隔离环境坚持番茄钟工作与休息–培养耐心最重要的是要提升你对时间的感知能力 发现做不...
    黄冉欣阅读 63评论 0 0
  • 人这一辈子,过程是各有春秋,但结局绝对都一样,都要走到尽头,面对死亡。但在丰富多彩的人生过程中,有钱或者有爱是多数...
    a安于此生阅读 702评论 0 0