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

标题: 孙科20221229 [打印本页]

作者: Sunke丶    时间: 2023-1-5 22:59
标题: 孙科20221229
1.学习目标
        1.执行环境与作用域--能够分析清楚即可,掌握作用域的分类--10%
        2.函数进阶的精通--非常熟练的掌握--40%
        3.闭包的精通--能够说的非常清楚什么是闭包,有什么作用,有什么特点--50%
2.执行环境和变量对象和作用域
        1.概念
                1.标识符:变量名、函数名、形参、对象的键名,统称为标识符;
                2.作用域:标识符可以被访问的范围,就是作用域;
                3.执行环境:代码的运行环境,js有两种执行环境:全局执行环境与函数执行环境;
                4.js执行环境都会被放入一个栈中;
                5.作用域链:提供了一套标识符访问的规则,保证标识符有序访问。访问标识符的时候,里面没有可以往外面找,层层往外找,直到window,找到了就停止,找不到就报错;
        2.作用域的分类
                全局作用域
                函数作用域(局部作用域)
                块级作用域(ES6新增的)
3.箭头函数
        语法
                let或者const  函数名=(形参)=>{js代码}
        可以省略的情况:
                1.参数有且只有一个:可以省略小括号
                2.只有一句代码:可以省略花括号,并且必须同时省略return,自动return
4.闭包
        1.跨作用域访问变量,形成闭包,闭包是一种作用域的体现
                常见的闭包写法:父函数嵌套子函数,子函数访问父函数的变量,把子函数返回或挂载在window上
        2.闭包的作用:
                实现早期的模块化开发,把所有变量隐藏在内部,对外暴露了统一的访问接口
                隐藏变量,避免全局污染
        3.闭包的缺点
                一旦形成闭包,$变量就不会被内存释放,内存开销大,可能会形成内存泄漏,不建议过多使用
                js有垃圾回收机制,形成闭包之后$变量不会被垃圾回收机制销毁






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