菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育

标题: 李扬敏-20221123-JS高阶 [打印本页]

作者: 王源的李可爱    时间: 2022-11-24 00:33
标题: 李扬敏-20221123-JS高阶
一.今日学习内容
1.执行环境与作用域
执行环境和变量对象与作用域
标识符:变量名/函数名/形参/对象的键名
作用域:标识符可以被访问的范围(自己和自己的子(后代)作用域)
执行环境(代码运行环境):全局执行环境,函数执行环境
js的执行环境,都被放入一个栈中,栈先进后出
作用域链:提供了一套标识符访问的规则,保证标识符有序访问,一层层向外查找标识符
2.作用域分类
全局作用域
函数作用域(局部作用域)
块级作用域(ES6)
3.函数进阶
ES5
声明式:function f1(){}
表达式:let a=function(){}
ES6
箭头函数:(形参)=>{js表达式}
可省略的情况:
{}中只有语句代码,省略{}并省略return
形参有且只有一个,可以省略()
箭头函数中没有arguments,不能使用
4.函数的参数
形参:占位用的
实参:调用函数时传入的实际参数
5.arguments伪数组
在函数内获取到所有实参的集合,可以用for循环,[...arguments],不能再箭头函数中使用
6.设置函数参数的默认值
ES5
function fn(形参){let 变量=形参||默认值}
ES6
function fn(形参=默认值){}
7.剩余参数(...rest)--数组集合
在箭头函数中可以使用
8.函数的返回值return
如果return返回的是一个函数,调用时需要调用两次
函数没有写return,函数返回undefined
函数在哪里调用,返回值就会返回到哪里
9.函数的调用
直接调用 ---函数名(实参)
对象的属性和方法调用---对象.方法()
回调---定时器,自动执行,自动调用
自己调用自己--自调用函数,立即执行函数表达式IIFE,没有函数名,将函数整个部分用()包起来,然后通过()调用
10.闭包
跨作用域访问变量,形成闭包,闭包是一种作用域的体现
常见闭包写法:父函数嵌套子函数,子函数可以访问父函数的变量,把子函数返回或者挂载window上






欢迎光临 菁英数字科技(猩码)-猩码学苑-专注软件开发人才菁英教育 (http://www.xingmaxueyuan.com/) Powered by Discuz! X3.4