【金秋打卡】第20天-直面JavaScript中的30个疑难杂症
2022/11/15 4:24:04
本文主要是介绍【金秋打卡】第20天-直面JavaScript中的30个疑难杂症,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一模块
课程名称:直面JavaScript中的30个疑难杂症
章节名称:
- 7-2 一定要知道的变量和函数提升
讲师姓名:公明2020
第二模块
课程内容(概述)
1、js
解释引擎:词法分析->语法分析->语法树
词法分析是将字符流(char stream)转换为记号流(token stream);语法分析成AST
2、js
解析:预编译期(预处理、预解析、预编译)与执行期
预编译预解析,当JavaScript引擎解析脚本时,它会在预编译期对所有声明的变量和丽数进行处理!并且是先预声明量,再预定义函数
3、变量声明提前,值停留在本地;函数是整个代码体提前
第三模块
介绍
在ES6
之前,声明一个变量需要用到var
关键字,用var来声明的变量就存在变量提升的特性
提升过程分析
var a = 1; function foo() { a = 10; console.log(a); return; function a() {}; } foo(); console.log(a); // ------------------------------ var a = 1; // 定义一个全局变量 a function foo() { // 首先提升函数声明function a () {}到函数作用域顶端 // 然后function a () {}等同于 var a = function() {};最终形式如下 var a = function () {}; // 定义局部变量 a 并赋值。 a = 10; // 修改局部变量 a 的值,并不会影响全局变量 a console.log(a); // 打印局部变量 a 的值:10 return; } foo(); console.log(a); // 打印全局变量 a 的值:1
第四模块
学习截图
这篇关于【金秋打卡】第20天-直面JavaScript中的30个疑难杂症的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行
- 2024-05-08阿里云域名注册流程,分享给第一次购买域名的新手站长!
- 2024-05-082024年,行业变动下的程序员应该首先学习哪种编程语言?