美文网首页
js : 预解释分析规律+用到的知识点

js : 预解释分析规律+用到的知识点

作者: Dream_丹丹 | 来源:发表于2017-07-20 20:08 被阅读0次

    预解释分析规律

    1. 预解释
    2. 代码从上到下执行
    3. 当我们遇到“函数定义阶段”的时候,不管,因为在预解释阶段,函数已经声明+定义过了
    4. 当我们遇到“函数调用阶段”的时候
    • 形成私有作用域
    • 形参赋值
    • 预解释
    • 代码从上到下执行

    注意:在函数调用,一定要顺带写上“该函数对应的堆内存地址”,因为找上级作用域的时候要用到

    上级作用域

    上级作用域跟函数在哪里调用无关,只跟函数对应堆内存在哪里开辟有关

    关注

    1. 内存和内存释放
    • 不释放
    • 不立即释放
    • 立即释放
      • 一旦私有作用域得到释放,函数的每次调用之间,没有任何关系
    1. 预解释无节操
    • 只对等号左边带var的进行预解释,只声明,不定义
    • 声明过的不会重新声明,但是会重新赋值
    • 自执行函数不会进行预解释,只有执行到它的时候,声明+定义+调用 同时完成
    • (针对IE10以下)条件判断语句中,无论条件是否成立,都会进行预解释
    • return后面的语句,不会进行预解释,return下面的语句,虽然不执行,但是会进行预解释

    this

    • 当前函数被调用后,看前面是否有“.”,点前面是谁,this就是谁,如果没有“.”,那么this就是window
    • 当元素身上的事件被触发的时候,会执行一个函数,函数中的this指向触发事件的元素
    • 自执行函数中的this,永远指向window
    • 回调函数中的this,一般执行window,可以通过thisArg进行更改
    • 构造函数中的this执行实例

    带var和不带var的区别

    • 带var:1. 会进行预解释 2. 在私有作用域下,是私有变量
    • 不带var:1. 不会进行预解释 2. 在私有作用域下,是window的全局属性

    运算符的优先级

    算数 > 比较 > 逻辑 > 赋值

    相关文章

      网友评论

          本文标题:js : 预解释分析规律+用到的知识点

          本文链接:https://www.haomeiwen.com/subject/sapjkxtx.html