专栏首页smh的技术文章javascript中函数声明与函数表达式

javascript中函数声明与函数表达式

在javascript中,我们经常要声明函数,或者使用函数表达式,今天我们就来说说这两者的区别。

解析器在执行代码的时候,对函数声明和函数表达式并不是一致的。

解析器会优化读取函数声明,这是为了使其他代码在使用此函数之前可以使用,函数表达式则不然,必须到函数表达式执行到所在代码的区域才会被解释执行。

我们来看两个例子:

1.函数声明:

console.log(action(10,20))

function action(num1,num2){

}

这段代码我们一直都知道,是可以通过的吧,这是因为解析器会优化读取函数,就是为了执行其他代码之前可使用。

javascript引擎在第一次会声明函数并将他们放在源代码的顶部,所以即使函数声明在调用的后面,也能完成执行。

如果使用函数表达式,这样的调用就会报错。

2.函数表达式:

console.log(action(10,20));

var action =function(num1,num2){

}

以上代码在运行期间就会产生错误,这是因为函数表达式。

在执行到函数所在语句之前,解析器根本找不到action这个函数,这就是函数声明和函数表达式的区别。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • js中async和await的基本使用

    async和await是在es7中的内容,不过现在主流浏览器都支持,今天我们就来说说怎么用。

    小明爱学习
  • javascript之闭包基础和注意点

    闭包就是值有权访问另一个函数作用域中的变量的函数,常见的方式就是:在一个函数内部创建另一个函数,并把这个函数作为返回值。

    小明爱学习
  • javascript之闭包基础了解

    闭包就是值有权访问另一个函数作用域中的变量的函数,常见的方式就是:在一个函数内部创建另一个函数,并把这个函数作为返回值。

    小明爱学习
  • 写 Python 代码不可不知的函数式编程技术

    近来,越来越多人使用函数式编程(functional programming)。因此,很多传统的命令式语言(如 Java 和 Python)开始支持函数式编程技...

    OpenCV学堂
  • 学会使用函数式编程的程序员(第1部分)

    在这篇由多部分组成的文章中,接下来将介绍函数式编程的一些概念,这些概念对你学习函数式编程有所帮助。如果你已经懂了什么是函数式编程,这可以加深你的理解。

    前端小智@大迁世界
  • 7.1 C语言函数

    1、函数是从英文function翻译过来的,其实function在英文中的意思既是函数,也是功能。、

    C语言入门到精通
  • Kotlin中let()with()run()apply()also()函数的使用方法与区别

    相比Java, Kotlin提供了不少高级语法特性。对于一个Kotlin的初学者来说经常会写出一些不够优雅的代码。在Kotlin中的源码标准库(Standard...

    砸漏
  • 什么是python的函数体

    函数的概念,函数是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集

    砸漏
  • 五撩Python

    重复,再重复,你就是专家。 --曾子 1、起手 来说函数。 2、函数 函数就是整理好的一堆可重用的代码,有输入,然后就有输出。 比如我们计算折扣,输入是消费者的...

    企鹅号小编
  • 如何编写高质量的 JS 函数(3) --函数式编程[理论篇]

    《如何编写高质量的 JS 函数(1) -- 敲山震虎篇》介绍了函数的执行机制,此篇将会从函数的命名、注释和鲁棒性方面,阐述如何通过 JavaScript 编写高...

    2020labs小助手

扫码关注云+社区

领取腾讯云代金券