zoukankan      html  css  js  c++  java
  • JavaScript中的this用法

      最近看了许多JavaScript源代码,发现this经常出现,于是对this这个非常特殊的关键词标识符进行总结。

      题外话:

      1、当函数被调用时,一个activation record【过程活动记录 -- 一种数据结构】被创建,

         这个record包涵信息:函数在哪调用,函数怎么调用的,参数等等,

         record的一个属性就是this,指向函数执行期间的this对象。

      2、函数在被调用时都会自动取得两个特殊变量,this和arguments 

      

      this在具体情况下的分析:

      1、在全局上下文,this指向全局对象。

           

      2、在函数内部时,this由函数怎么调用来确定。

       (1)作为对象方法的调用

             

        也可以这样写

         

       (2)作为构造函数的调用

             

        在构造函数(函数用new调用)中,this指向要被constructed的新对象。  即this指向实例化对象

      3、apply调用

         apply()是函数对象的方法,其作用是改变函数的调用对象,它的第一个参数 表示改变后的调用的函数对象,即this指的就是第一个参数。

           

         apply()参数为空时,默认调用全局对象,可以看到,运行结果为 "Yori",证明this指向全局对象。

         apply()参数为b时,,可以看到,运行结果为 "bentos",证明this指向对象b。

        

        

      

      

      

  • 相关阅读:
    django模型的crud操作
    django模型中的关系对应
    django中模型详解-字段类型与约束条件
    django中的模型详解-1
    运维自动化轻量级工具pssh
    zabbix告警使用sendEmail
    nginx正向代理,反向代理,透明代理(总结)
    nginx.conf的events,http段一般固定配置
    nginx实战2---浏览器设置缓存
    nginx之location
  • 原文地址:https://www.cnblogs.com/wuyongyu/p/5756626.html
Copyright © 2011-2022 走看看