美文网首页
this的关键字理解和指向

this的关键字理解和指向

作者: 五四青年_4e7d | 来源:发表于2020-02-11 16:44 被阅读0次

普通函数中this指向的是window

function  add(a,b){
    console.log(this)
    return a + b
}
// this = window
add()

事件处理函数中this指向事件源:

//html:
 <button id="but">按钮</button>
//js:
$("#but").on("click",function(){
    console.log(this)
})

回调函数中this指向window:

var Bob={
         sname:"鲍勃",
         friends:["Jack","Rose","Tom","Jerry"],
         intr(){
           this.friends.forEach((ele)=>{
                console.log(this.sname+"认识"+ele);
           });
         }
    }
     Bob.intr();

构造函数中this指向的是创建出来的对象:

function Person3() {
    this.name = 'tianxia'; //这个this指向什么?
}
var person3 = new Person3();

怎么样改变this的指向?(call() apply() bind()调用模式:)

function info(name,age){
    return console.log('你好'+ name + '我是调用的'+ this.name + age + '岁')
}
var whh = {
    name:'娃哈哈'
}
console.log(whh)
//使用call可以把this绑定上,function的this等于什么,可以在外部指定;
//第一项用于绑定函数里面的this
//call和apply本质上是一样的不同的区别如下:(传参为数组)
//bind 必须要用变量接收,调用变量()不马上执行
info.call(whh,'李慷',111)
info.apply(whh,['李慷',111])

var yy = info.bind(whh)
yy('kk',22)

相关文章

  • this的关键字理解和指向

    普通函数中this指向的是window 事件处理函数中this指向事件源: 回调函数中this指向window: ...

  • this

    this 对象的理解 普通函数 this 总是指向函数的直接调用者如果有 new 关键字,this 指向 new ...

  • iOS 关键字

    常用关键字理解 strong、copy、weak、assign strong修饰的对象是强引用,该指针指向的对象引...

  • lambda 和 匿名内部类的区别 this

    this关键字 匿名类匿名类的this关键字指向匿名类 lambda表达式lambda表达式的this关键字指向包...

  • this指向的理解

    关于this指向,是这几天学微信小程序开发时才恶补的,所以理解的不是很全面,但是还是有很多的收获的,所以想记录下来...

  • Javascript中的this关键字、call和apply

    this关键字的指向 this关键字的理解是在很多前端面试题中出现的题目,实际开发中用到的地方也非常多,这里写一下...

  • 函数和面向对象

    Function函数 构造函数和new关键字 this的指向 call和apply arguments 类数组 i...

  • php三大关键字的含义

    this,self,parent三个关键字从字面上比较好理解,分别是指这、自己、父亲。 this是指向当前对象的指...

  • php中 this,self,parent的区别

    this,self,parent三个关键字从字面上比较好理解,分别是指这、自己、父亲。 this是指向当前对象的指...

  • 2018-11-14号相关学习资料

    java中final关键字的作用深入理解Java中的final关键字java中的final如何使用和理解PPT和1...

网友评论

      本文标题:this的关键字理解和指向

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