this对象的指向含义

一个新手
Lepaskan: 2017-09-25 10:40:45
asal
1428 orang telah melayarinya

1.函数中:

function foo(){
   return this;
}
Salin selepas log masuk

函数调用者是谁,就指向谁;直接调用指向window;

2.事件中:html事件中,指向window;dom0事件中,指向事件的触发者(绑定元素的节点);dom2事件中,非IE中指向绑定的元素节点;IE中直接指向window;

3.闭包中:this指向window;

4.对象中:this指向当前对象;如果有多级对象包裹,指代上一级对象;
( 1).

var foo = {
         a:18,
        num:{
         a:10,
           num:function(){
          console.log(this.a);//10
                   }
               }
       }
  foo.num.num();
Salin selepas log masuk

(2).

var foo = {
        a:18,
         num:{
         num:function(){
         console.log(this.a);//undefined
                   }
               }
       }
  foo.num.num();
Salin selepas log masuk

5.call函数和apply函数能改变this的指向,bind函数也能改变函数指向;

6.构造函数模块:

总结:构造函数中,返回值是基本数据类型,那么this指向构造函数的实例;返回值是对象则this指向该对象;

 function Foo(){           
     this.user = 'my';           
     return {};       
     }       
     var na = new Foo();       
     console.log(na.user);//返回值undefined;
 function Foo(){           
     this.user = 'my';           
     return 1;      
      }       
      var na = new Foo();       
      console.log(na.user);//返回值my
Salin selepas log masuk

Atas ialah kandungan terperinci this对象的指向含义. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!