zoukankan      html  css  js  c++  java
  • 23)

    Javascript中级

    1.作用域链:

      作用域:浏览器给js的一个生存环境(栈内存

      作用域链:js中的关键字,var和function都可以提前声明和定义,提前声明和定义的放在我们的内存地址(堆内存)中。然后js从上到下逐层执行,遇到变量就去内存地址查找是否存在这个变量,有就使用,没有就继续向父级作用域查找直到window下结束,这种查找机制叫作用域链。

      js代码中存在着大量的变量跟函数

    2.This、

      1.this是js的一个关键字,指定一个对象然后去代替他

        函数内的this——函数外的this

        函数内this:指向行为发生的主体  函数外this:指向window没有意义

             function  chifan(){

                      console.log(this)

                      }

                banzhang.chifan()      banzhang就是这个函数的主体

        2. 函数内的this和函数在什么环境下定义没有关系,只和自己的主体有关。

        3. 主体怎么找?

            就看这个函数(方法)带不带 . 

            如果函数和方法执行带 .  那么this就指向 . 前面的对象 、

            如果不带 .   就指向window

        4. 自执行函数里面的this都指向window

            this和变量面试题,先找this的主体是谁,然后把它换成那个主体

        5. 给元素的某一个事件绑定方法,当事件触发时,执行绑定的方法,方法中的this指向当前元素

            function  fn(){

                console.log(this)

                    }  

            document.getElementById(“div”). onclick=function(){

                          console.log(this)        ||  div   

                          fn()                || window

                                    }

            document.getElementById(“div”). onclick=fn;

    重点是函数套用的时候:

        不管他怎么定义,就看他执行时候的主体

     1.怎样查找变量和函数的归属

     2.怎样查找this的指向

          函数内部的this跟函数在哪定义没有关系,只跟在执行时的主体有关

          带. 的主体就是 . 前面的对象;不带 . 就是window

  • 相关阅读:
    畅销书排行榜
    阿里云大数据产品体系
    天然气收费管理系统的研究与实现随笔
    Web端实现RTC视频特效的解决方案
    从0搭建在线聊天室,只需4步!
    技术干货 | JavaScript 之事件循环(Event Loop)
    C++20 四大特性之一:Module 特性详解
    Android Flutter 多实例实践
    网易云信线上万人连麦技术大揭秘
    Python + Pytest 自动化框架的用例依赖实操
  • 原文地址:https://www.cnblogs.com/xiaotaiyangye/p/9885818.html
Copyright © 2011-2022 走看看