JavaScript 函数 02

Day07 JavaScript 笔记

1函数

1.1 变量提升

① 变量提升

JavaScript 中会把变量提升到本作用域的最前面。只提升了变量的声明,没有提升变量的赋值。在正式执行代码之前,变量就已经提升了,正式执行到声明函数语句的时候,仅仅是进行了赋值操作。

② 函数提升

**function 关键字方式创建的函数:**不但会提升函数的声明,连同函数一起提升到作用域的最前面,当正式代码执行到函数声明语句,直接跳过。

**表达式方式与Function 构造函数方式创建的函数:**与变量的提升规则一致!

1.2 匿名函数

匿名函数就是没有名字的函数;匿名函数其实就是用直接量方式表示函数。

匿名函数通常作为自调用函数和回调函数使用。

1.3 自调用函数

简称IIFE, 英文全称 Immediately Invoked Function Expression

自调用函数也叫立即调用函数,函数声明完立即被调用了。

自调用函数通常会使用匿名函数。

自调用函数的意义:产生作用域,避免全局变量污染。

// 匿名的自调用函数
(function() {
    
})();

// 有名字的自调用函数
(function fn() {
    
})();


// 自调用函数设置参数
(function(name, address) {
    console.log(name + '住在' + address);
})('大悲', '马路上');

**注意:**连续写多个自调用函数的时候,可能出现执行错误,需要写完一个自调用函数之后用分号结束,或者在自调用函数的前面任意写一个一元运算符。

1.4 回调函数

① 什么是回调函数

满足一下三个条件的函数称为回调函数:

​ 1、函数是我定义的

​ 2、我没有调用函数(没有直接调用)

​ 3、函数被执行了

**注意:**回调函数的形式大部分都是作为其他函数的参数。

② 回调函数的使用场景

​ 1、DOM 事件的回调函数

​ 2、定时器的回调函数

​ 3、Ajax 的回调函数

​ 4、声明周期的钩子函数

​ 5、其他需要回调函数作为参数的系统参数(方法)

1.5 递归函数

① 递归函数:

函数内部可以调用自己,称之为函数的递归调用,这种函数叫做递归函数。

② 递归函数成功的条件

​ 1、要有结束递归的条件。

​ 2、随着递归调用次数的增加,应该越来越趋近于递归结束的条件。

③ 递归函数的缺点

​ 1、递归函数调用很容易发生灾难(内存泄漏)而调用失败。

​ 2、函数递归调用效率不高,能不用就不用。

④ 递归函数应用场景

后端场景:目录的删除、复制、移动等操作。

前端场景:处理从后端获取的 json 数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值