zoukankan      html  css  js  c++  java
  • Javascript中的this

    this是 JavaScript 语言的一个关键字。

    -它是函数运行时,在函数体内部自动生成的一个对象,只能在函数体内部使用

    -this对象在运行时基于函数的执行环境绑定的:在全局函数中,this等于window。

    -而当函数作为某个对象的方法调用时。this等于那个对象,(匿名函数的执行具有全局性,因此其this对象通常指向window)

    this:这个

    this:指的是调用当前方法(函数)的那个对象

    • 解析器在调用函数每次都会向函数内部传递进一个隐含的参数

    -这个隐含的参数就是this,this指向的是一个对象

    -这个对象我们称为函数执行的上下文对象,

    -根据函数调用方式的不同,this会指向不同的对象

    1.用函数形式调用,this就是window

    2.用方法形式调用,this就是调用方法的那个对象

    var name="Hole";
    function fun(){
        console.log(this.name);
    }
    var obj={
        name:"Jeo",
        sayName:fun
    }
    var obj2={
        name:"Rose",
        sayName:fun
    }
    fun()//全局下的变量Hole
    obj2.sayName()//Rose

     3.当用构造函数形式调用时,this就是新创建的那个对象

    function creatPerson(name,age){
    this.name=name;
    this.age=age;
    this.say=function(){
        alert('hello:'+name);
    }
    }
    var obj=new creatPerson("Jeo",23);
    var obj2=new creatPerson("Rose",14);
    obj.say();//hello:Jeo

     4.使用call和apply调用时,this是指定那个对象

    var obj={name:'Jeo'};
    var obj2={name:'obj2'};
    function fun(a,b){
        alert(a);
    }fun.call(obj,2,3);//this指向第一个参数:obj
  • 相关阅读:
    梯度下降法-4.向量化和数据标准化
    梯度下降法-3.实现线性回归中的梯度下降法
    梯度下降法-2.线性回归中的梯度下降法
    梯度下降法-1.原理及简单实现
    线性回归算法-5.更多思考
    TCP/IP协议
    TFTP 服务器
    python3 系统编程进程
    python3 私有化 属性property
    python3 面向对象
  • 原文地址:https://www.cnblogs.com/yuan233/p/10329019.html
Copyright © 2011-2022 走看看