您现在的位置是:群英 > 开发技术 > web开发
JavaScript匿名函数是什么,函数表达式如何写
Admin发表于 2022-05-16 11:29:42886 次浏览
这篇文章主要给大家介绍“JavaScript匿名函数是什么,函数表达式如何写”的相关知识,下文通过实际案例向大家展示操作过程,内容简单清晰,易于学习,有这方面学习需要的朋友可以参考,希望这篇“JavaScript匿名函数是什么,函数表达式如何写”文章能对大家有所帮助。

一、变量的作用域

思考:声明变量后就可以在任意位置使用该变量嘛?

回答:不是。

举例:函数内var关键字声明的变量,不能在函数外访问。

总结:变量的使用是有作用域范围的。

作用域划分:全局作用域、函数作用域和块级作用域(ES6提供的)。

不同作用域对应的变量:全局变量、局部变量、块级变量(ES6提供的)。

全局变量:不在任何函数内声明的变量(显示定义)或在函数内省略var声明变量(隐式定义)都称为全局变量。

作用范围:它在同一个页面文件中的所有脚本内都可以使用。

局部变量:在函数体内利用var关键字定义的变量称为局部变量,它仅在该函数体内有效。

块级变量:ES6提供的let关键字声明的变量称为块级变量,仅在“{}”中间有效,如if、for或while语句等。

垃圾回收机制

在JavaScript中,局部变量只有在函数的执行过程中存在,而在这个过程中会为局部变量在(栈或堆)内存上分配相应的空间,以存储它们的值,然后在函数中使用这些变量,直到函数结束。而一旦函数执行结束,局部变量就没有存在必要了,此时JavaScript就会通过垃圾回收机制自动释放它们所占用的内存空间。

在开发中若要保留局部变量的值,可以通过以下两种方式实现:

二、匿名函数

概念:所谓函数表达式指的是将声明的函数赋值给一个变量,通过变量完成函数的调用和参数的传递,它也是JavaScript中另一种实现自定义函数的方式。

函数表达式

匿名函数

概念:匿名函数指的是没有函数名称的函数。

作用:可以有效的避免全局变量的污染以及函数名的冲突问题。

说明:既是函数表达式的另一种表示形式,又可通过函数声明的方式实现调用。

箭头函数

概念: ES6中引入了一种新的语法编写匿名函数,我们称之为箭头函数。

特点:一个箭头函数表达式的语法比一个函数表达式更短。

三、嵌套与递归

函数嵌套与作用域链

什么是嵌套函数:是在一个函数内部存在另一个函数的声明。

特点:内层函数只能在外层函数作用域内执行,在内层函数执行的过程中,若需要引入某个变量,首先会在当前作用域中寻找,若未找到,则继续向上一层级的作用域中寻找,直到全局作用域,我们称这种链式的查询关系为作用域链。

递归调用

概念:递归调用是函数嵌套调用中一种特殊的调用。它指的是一个函数在其函数体内调用自身的过程,这种函数称为递归函数。

下面以计算阶乘为例进行演示。

注意

递归调用虽然在遍历维数不固定的多维数组时非常合适,但它占用的内存和资源比较多,同时难以实现和维护,因此在开发中要慎重使用函数的递归调用。

案例

求斐波那契数列第N项的值

了解什么是斐波那契数列

斐波那契数列又称黄金分割数列,如 “1, 1, 2, 3, 5, 8, 13, 21……”。

找规律: 这个数列从第3项开始,每一项都等于前两项之和。

代码实现思路

  • 小于0,给出错误提示信息。
  • 等于0,返回0。
  • 等于1,返回1。
  • 大于1,按找到的规律并利用函数递归调用实现。

通过以上内容的阐述,相信大家对“JavaScript匿名函数是什么,函数表达式如何写”已经有了进一步的了解,更多相关的问题,欢迎关注群英网络或到群英官网咨询客服。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: 匿名函数
相关信息推荐
2021-11-23 17:41:42 
摘要:这篇文章我们来了解python中文件操作的内容,下文将介绍打开、关闭、保持和读写文件,下文有很详细的介绍,对新手学习Python有一定的帮助,有需要的朋友可以参考,接下来就跟随小编来一起学习一下吧!
2022-07-26 17:52:33 
摘要:英语不好,并不会影响PHP的学习,因为PHP常用英文也就那么几个。在之前的文章《HTML英文单词汇总(PHP新手收藏)》中介绍了学PHP涉及的所有HTML英文单词,下面先给大家分享一下学PHP涉及的所有CSS英文单词。
2021-12-29 18:30:24 
摘要:这篇文章给大家分享的是Python GIL锁的相关内容,下文将介绍GIL锁是什么、GIL锁的产生和底层原理等等,文中介绍得很详细,大家可以参考了解一下,那么感兴趣的朋友接下来一起跟随小编看看吧。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部