带你读书之“红宝书”:第十章 函数⑧

简介: 带你读书之“红宝书”:第十章 函数⑧

写在前头

大多数小伙伴看技术书籍都会用“啃”来描述读书的直观感受,当然我也是一个前端小白,白的透明那种,但是我在读技术书籍感觉到“啃”的时候,我希望把我啃红宝书第四版的过程的想法,总结带给大家,以供后来者能够更快上手。


注: 本文由于作者水平原因,如有错误之处,恳请大家指正,另外随着学习的深入,体会的加深,我会不断回来更新,修改这类文章。


思维导图

1dae418daf7b468f9ced6373ea9aa214_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


简述

函数这一章其实在有一定的编程基础,比如学过一点c语言就很好读下去。整体还是易读板块。


10.11 函数表达式

ccd02a4f51144c31a1c2be50bcb2147c_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


  • 函数声明

提升

函数声明会在代码执行之前获得定义。及时函数定义在函数调用之后也不会报错。

原因

JavaScript 引擎会先读取函数声明,然后再执行代码。而函数表达式的函数定义不会提升。不可以在定义之前调用函数。


  • 匿名函数

别称

兰姆达函数

未用于赋值时

使用函数表达式其实就是创建一个匿名函数然后把这个函数赋值给一个变量。当这个函数没有赋值给一个变量时,函数的name属性是空字符串。


  • 提升小例子

①使用if else 判断是否该选择使用哪一个函数。

如果if else 里面是函数声明,那么由于不同的浏览器会可以导致错误。

如果if else 里面是函数表达式,那么可以根据if()里面的值正确的选择使用函数。

  • 在函数中返回另一个函数
  • 怎么样是一个函数表达式
    任何时候,只要函数被当作值来使用,它就是一个函数表达式。


10.12 递归

929b377ddd604980b4ee52fb034a576a_tplv-k3u1fbpfcp-zoom-in-crop-mark_4536_0_0_0.png


  • 形式

递归函数通常的形式是一个函数通过名称调用自己

  • 改变函数名
    递归失败
    将函数名赋值给一个变量,使用这个变量递归,之前的函数名赋值为空值。使用之后的变量来进行递归,但是这样会导致无法成功递归。
    arguments.cellee
    arguments.callee 就是一个指向正在执行的函数的指针。如果将函数名赋值给其他变量,使用这个变量进行递归的时候,内部可以使用arguments.cellee。这样就可以保证递归的成功。


注意 在严格模式下运行的代码是不能访问 arguments.callee 的,因为访问会出错。
命名函数表达式
将函数使用括号包括起来然后赋值给一个函数。



目录
相关文章
|
10月前
|
C语言
c语言编程练习题:7-39 龟兔赛跑
c语言编程练习题:7-39 龟兔赛跑
169 0
|
4月前
|
数据处理 Python
从零到英雄:Python编程的奇幻旅程###
想象你正站在数字世界的门槛上,手中握着一把名为“Python”的魔法钥匙。别小看这把钥匙,它能开启无限可能的大门,引领你穿梭于现实与虚拟之间,创造属于自己的奇迹。本文将带你踏上一场从零基础到编程英雄的奇妙之旅,通过生动有趣的比喻和实际案例,让你领略Python编程的魅力,激发内心深处对技术的渴望与热爱。 ###
|
10月前
|
人工智能 架构师 机器人
高薪程序员的三大窍门,你准备好了吗?
“高薪,月薪过万”已经成为人们对于程序员的刻板印象,但实际上对于二三线城市的码农来说,月薪过万似乎仍然是一个难以达到的目标。地理位置、房价以及升职加薪等问题让程序员陷入了薪资困境。作为一位程序员,若想获得自己理想的工资水平,需要具备哪些要素呢?
|
前端开发 JavaScript C语言
带你读书之“红宝书”:第十章 函数①
带你读书之“红宝书”:第十章 函数①
126 0
带你读书之“红宝书”:第十章 函数①
|
前端开发 C语言
带你读书之“红宝书”:第十章 函数④
带你读书之“红宝书”:第十章 函数④
95 0
带你读书之“红宝书”:第十章 函数④
|
前端开发 C语言
带你读书之“红宝书”:第十章 函数⑨
带你读书之“红宝书”:第十章 函数⑨
109 0
带你读书之“红宝书”:第十章 函数⑨
|
前端开发 JavaScript
带你读书之“红宝书”:第五章 基本引用类型⑩
带你读书之“红宝书”:第五章 基本引用类型⑩
96 0
带你读书之“红宝书”:第五章 基本引用类型⑩
|
JavaScript 前端开发
带你读书之“红宝书”:第五章 基本引用类型⑨
带你读书之“红宝书”:第五章 基本引用类型⑨
93 0
带你读书之“红宝书”:第五章 基本引用类型⑨
|
前端开发 索引
带你读书之“红宝书”:第五章 基本引用类型⑧
带你读书之“红宝书”:第五章 基本引用类型⑧
83 0
带你读书之“红宝书”:第五章 基本引用类型⑧
|
JavaScript 前端开发 Python
带你读书之“红宝书”:第三章 语法基础(上)
带你读书之“红宝书”:第三章 语法基础(上)
94 0
带你读书之“红宝书”:第三章 语法基础(上)