JavaScript笔记进阶篇01——作用域、箭头函数、解构赋值

黑马程序员视频地址:

黑马程序员前端JavaScript入门到精通全套视频教程https://www.bilibili.com/video/BV1Y84y1L7Nn?vd_source=0a2d366696f87e241adc64419bf12cab&spm_id_from=333.788.videopod.episodes&p=152

目录

作用域

局部作用域

函数作用域

块作用域

全局作用域

作用域链

JS垃圾回收机制

什么是垃圾回收机制?

内存的生命周期

拓展------算法说明

引用计数法

标记清除法

闭包

基本格式

闭包的应用

变量提升

函数进阶

函数提升

函数参数

[动态参数 argument](#动态参数 argument)

剩余参数

展开运算符

应用

与剩余参数区分

箭头函数

基本写法

写法一:基本写法

写法二:只有一个参数时,小括号可以省略

[写法三:如果函数体只有一行代码,可以写到一行上,并且无需写 return 直接返回值](#写法三:如果函数体只有一行代码,可以写到一行上,并且无需写 return 直接返回值)

写法四:加括号的函数体返回对象字面量表达式

箭头函数参数

箭头函数this

解构赋值

数组解构

基本语法

分号的添加

变量多,值少

防止有undefined,设置默认值

变量少,值多

利用剩余参数解决

按需导入,忽略某些返回值

支持多维数组的结构

对象解构

基本语法

给新的变量名赋值

数组对象解构

多级对象解构

[遍历数组 forEach 方法(重点)](#遍历数组 forEach 方法(重点))

[筛选数组 filter 方法(重点)](#筛选数组 filter 方法(重点))


作用域

局部作用域

函数作用域


块作用域


全局作用域


作用域链


JS垃圾回收机制

什么是垃圾回收机制?


内存的生命周期


拓展------算法说明


引用计数法

标记清除法


闭包


基本格式


闭包的应用

每个变量内部的值是独立计算的,即fun_a和fun_b内部的 i 值各自单独计算


变量提升


函数进阶

函数提升


函数参数


动态参数 argument


剩余参数


展开运算符


应用

与剩余参数区分

箭头函数


基本写法

写法一:基本写法

写法二:只有一个参数时,小括号可以省略

写法三:如果函数体只有一行代码,可以写到一行上,并且无需写 return 直接返回值

写法四:加括号的函数体返回对象字面量表达式

因为对象与箭头函数都是大括号,因此要在对象的大括号外面加个小括号


箭头函数参数


箭头函数this


解构赋值


数组解构

基本语法


分号的添加


变量多,值少


防止有undefined,设置默认值

变量少,值多


利用剩余参数解决

按需导入,忽略某些返回值


支持多维数组的结构


对象解构

基本语法


给新的变量名赋值


数组对象解构


多级对象解构


遍历数组 forEach 方法(重点)


筛选数组 filter 方法(重点)

相关推荐
福兮说3 小时前
前端下载大文件,点了按钮半天没反应:fetch + blob 的三个问题和三种替代写法
前端·javascript·性能优化·文件下载
今年下半年5 小时前
【VUE】整合腾讯地图、自定义区域边界、村委名称及资产统计(放大显示资产点位)
前端·javascript·vue.js
L@ncor6 小时前
第五章 基于低代码平台的智能体搭建 · 学习笔记(Coze / Dify / FastGPT / n8n)
笔记·学习·低代码·agent·prompt工程
知潮网6 小时前
被嫌弃的五仁月饼,一吨千元在养猪场翻了身
笔记
2601_960631236 小时前
中药前处理及提取的工艺环节与技术要点
笔记
2601_965384267 小时前
口腔黏膜清洁中的几何约束与流体动力学边界层问题分析
经验分享·笔记
一米阳光86617 小时前
软考高级【信息系统项目管理师】高项重要考点(9)组织 助你顺利上岸!
笔记·职场发展·软考·高项·信息系统项目管理师·高级职称
白杨尚青8 小时前
C++入门篇(十):string(上)——认识string:构造与三大遍历(一条龙讲透operator[]、迭代器、auto、范围for)
java·开发语言·c++·笔记·stl
可乐鸡翅yeah_8 小时前
hls.js 切换多个视频源,新手开发常见踩坑
开发语言·前端·javascript·ios·ffmpeg·音视频·safari
Chen—LSN8 小时前
C语言——⽂件操作(1)
c语言·开发语言·c++·经验分享·笔记·算法·链表