当前位置: 首页 > article >正文

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

黑马程序员视频地址:

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

目录

作用域

局部作用域

函数作用域

块作用域

全局作用域

作用域链

JS垃圾回收机制

什么是垃圾回收机制?

内存的生命周期

拓展——算法说明

引用计数法

标记清除法

闭包

基本格式

闭包的应用

变量提升

函数进阶

函数提升

函数参数

动态参数 argument

剩余参数

展开运算符

应用 

与剩余参数区分 

箭头函数

基本写法

写法一:基本写法 

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

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

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

箭头函数参数

箭头函数this

解构赋值

数组解构

基本语法

分号的添加 

变量多,值少

防止有undefined,设置默认值

变量少,值多

利用剩余参数解决

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

支持多维数组的结构

对象解构

基本语法

给新的变量名赋值

数组对象解构

多级对象解构

遍历数组 forEach 方法(重点)

筛选数组 filter 方法(重点)


作用域

局部作用域

函数作用域


块作用域


全局作用域


作用域链


JS垃圾回收机制

什么是垃圾回收机制?


内存的生命周期


拓展——算法说明


引用计数法


标记清除法


闭包


基本格式


闭包的应用

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

 


变量提升


函数进阶

函数提升


函数参数


动态参数 argument


剩余参数


展开运算符


应用 


与剩余参数区分 

 


箭头函数


基本写法

写法一:基本写法 


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


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


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

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


箭头函数参数


箭头函数this

 

 


解构赋值

 


数组解构

基本语法


分号的添加 

 


变量多,值少


防止有undefined,设置默认值

 


变量少,值多


利用剩余参数解决


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


支持多维数组的结构


对象解构

基本语法


给新的变量名赋值


数组对象解构


多级对象解构

 


遍历数组 forEach 方法(重点)

 


筛选数组 filter 方法(重点)


http://www.kler.cn/a/513385.html

相关文章:

  • PyCharm+RobotFramework框架实现UDS自动化测试- (四)项目实战0x10
  • Keep 实战指南:构建强大的AIOps和告警管理平台
  • vue3+ts+uniapp 微信小程序(第一篇)—— 微信小程序定位授权,位置信息权限授权
  • 《目标检测数据集下载地址》
  • 【Linux】gawk编辑器二
  • wireshark工具简介
  • Java 中的同步与并发工具类
  • JAVA-Exploit编写(8-10)--http-request库编写exp批量利用
  • 后端:MyBatis
  • Hive: Hive的优缺点,使用方式,判断Hive是否启动(jps),元数据的存储,Hive和Hadoop的关系
  • Elasticsearch 中,分片(Shards)数量上限?副本的数量?
  • PPT大纲:如何用python实现gitlab和jira的集成
  • 芝士AI(paperzz):最新AI论文、AI降重、AI降重工具,解决论文写作低效和AI率
  • axios的使用总结
  • Python的泛型(Generic)与协变(Covariant)
  • 总结研究ChatGPT提示词分享
  • 【人工智能】Python常用库-Keras:高阶深度学习 API
  • LabVIEW智能胎压监测
  • ARM-V9 CCA/RME QEMU环境搭建
  • 【leetcode 26】28.找出字符串中第一个匹配项的下标 | 实现 strStr()==❗不会❗==
  • Java数据结构——优先队列
  • 2025牛客寒假训练营1【代码】 A B D E G H J M
  • 线性回归笔记1-4
  • java依赖问题
  • VBA语言的区块链
  • 人工智能技术在冷链物流行业的应用前景