JavaScript學習總結(十)——this關鍵字


 1 <script type="text/javascript">
 2     function Person(){
 3         /*使用var 屬性名定義的屬性是類的私有屬性,外界無法訪問,要想被外界訪問,就要使用公共方法*/
 4         var QQ="123456"; 
 5         var Email="123456@qq.com";
 6 
 7         /*使用this.屬性名定義的屬性就是類的公共屬性,是可以被外界訪問的*/
 8         this.Name="孤傲蒼狼";
 9         this.Age=24;
10 
11         /*定義Person類的公共方法,凡是定義類的公共屬性和公共方法都要使用this*/
12         this.Show=function(){//定義Person類的公共方法(特權方法)
13             alert("QQ="+QQ+"\tEmail="+Email);
14 
15         }
16         
17         /*定義Person類的私有方法*/
18         function Show2(){//這是Person類的一個私有方法,只能在Person類內部使用
19             
20         }
21     }
22 
23     var p1 = new Person();
24     alert("私有屬性p1.QQ="+p1.QQ+"\t"+"p1.Email="+p1.Email);
25     alert("公共屬性p1.Name="+p1.Name+"\t"+"p1.Age="+p1.Age);
26     p1.Show();
27     //p1.Show2();//這里會報錯,無法調用Person類的私有方法,
28     
29     /*
30     Window 對象描述
31     Window 對象表示一個瀏覽器窗口或一個框架。在客戶端 JavaScript 中,Window 對象是全局對象,所有的表達式都在當前的環境中計算。
32     也就是說,要引用當前窗口根本不需要特殊的語法,可以把那個窗口的屬性作為全局變量來使用。例如,可以只寫 document,而不必寫 window.document。
33 
34     同樣,可以把當前窗口對象的方法當作函數來使用,如只寫 alert(),而不必寫 Window.alert()。
35     */
36     function Test(){
37         alert(this.v);
38     }
39     v=90;
40     Test();
41     window.Test();//記住一句話:哪個對象調用this所在的函數,那么this代表的就是哪個對象實例,這里是window對象調用Test()方法,因此此時this指的就是window對象
42 
43     function Test2(){
44         this.fnTest=function(){
45             alert(this.v2);
46         }
47     }
48 
49     var t = new Test2();
50     t.v2="記住一句話:哪個對象調用this所在的函數,那么this代表的就是哪個對象實例";
51     t.fnTest();//這里是t對象調用Test()方法,因此此時this指的就是t對象
52   </script>

JavaScript的this總結:

   1、this不能在類定義的外部使用,只能在類定義的內部使用。

   2、哪個對象調用this所在的函數,那么this代表的就是哪個對象實例。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM