1、关于函数中this
1.1、this的概念
this指的是你的函数执行时所在的执行环境(作用域),也就是什么调用this,那么this就指向哪里。
1.2、this的具体指向
this的指向一般分为四种:
1、在全局范围调用this的时候,this指向windows。例子如下:
<script type="text/javascript">
console.log(this)
</script>
2、当一个函数被当成一个对象的方法来调用时,this指向这个对象。例子如下:
<script type="text/javascript">
var a = {
name:"a",
fun:function(){
return this
}
}
console.log(a.fun())
</script>
3、通过事件来调用时,this指向这个函数的调用者。例子如下:
<body>
<button>click</button>
</body>
<script type="text/javascript">
var btn = document.querySelector('button');
btn.addEventListener('click', function() {
console.log(this); //this
})
</script>
4、在构造函数中的this指向它的实例化对象。例子如下:
<script type="text/javascript">
function Fun(name){
this.name = name;
}
var fun1 = new Fun("fun");
console.log(fun1)
</script>
网友评论