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代表的就是哪个对象实例。

JavaScript学习总结(十)——this关键字的更多相关文章

  1. JavaScript:学习笔记(4)——This关键字

    JavaScript:学习笔记(4)——This关键字 以前这篇帖子是关于闭包的,但是我想弄明白的其实是This关键字.JavaScript的this和Java等面向对象语言中的this大不一样,bi ...

  2. JavaScript学习总结(十六)——Javascript闭包(Closure)

    原文地址: http://www.cnblogs.com/xdp-gacl/p/3703876.html 闭包(closure)是Javascript语言的一个难点,也是它的特色, 很多高级应用都要依 ...

  3. JavaScript学习笔记–(new关键字)

    作用 是创建一个对象实例.这个对象可以是用户自定义的,也可以是一些系统自带的带构造函数的对象. 描述 创建一个对象类型需要创建一个指定了名称和属性的函数:其中这些属性可以指向它本身,也可以指向其他对象 ...

  4. JavaScript学习总结(十四)——JavaScript编写类的扩展方法

    在​J​a​v​a​S​c​r​i​p​t​中​可以使​用​类的p​r​o​t​o​t​y​p​e属性来​扩​展​类的属​性​和​方​法,在实际开发当中,当JavaScript内置的那些类所提供的动态 ...

  5. JavaScript学习总结(十二)——JavaScript编写类

    在工作中经常用到JavaScript,今天总结一下JavaScript编写类的几种写法以及这几种写法的优缺点,关于JavaScript编写类的方式,在网上看到很多,而且每个人的写法都不太一样,经常看到 ...

  6. JavaScript学习笔记(十二) 回调模式(Callback Pattern)

    函数就是对象,所以他们可以作为一个参数传递给其它函数: 当你将introduceBugs()作为一个参数传递给writeCode(),然后在某个时间点,writeCode()有可能执行(调用)intr ...

  7. JavaScript学习总结(十五)——Function类

    在JavaScript中,函数其实是对象,每个函数都是Function类的实例,既然函数对象,那么就具有自己的属性和方法,因此,函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定. 一.函数的 ...

  8. JavaScript学习总结(十九)——使用js加载器动态加载外部Javascript文件

    今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js 1 var MiniSite=new Object(); 2 /** 3 * 判断浏览器 4 */ 5 M ...

  9. JavaScript学习总结(十八)——JavaScript获取浏览器类型与版本

    从网上找到一段使用JavaScript判断浏览器以及浏览器版本的比较好的代码,在此记录一下: 1 <script type="text/javascript"> 2 v ...

随机推荐

  1. hdu1866 A + B forever!(面积并)题解

    A + B forever! Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  2. 风景区的面积及道路状况分析问题 test

    参考文献:   https://wenku.baidu.com/view/b6aed86baf1ffc4ffe47ac92.html #include <bits/stdc++.h> us ...

  3. java中年月日的加减法,年月的加减法使用

    本文为博主原创,未经允许不得转载: java计算两个年月日之间相差的天数: public static int daysBetween(String smdate,String bdate) thro ...

  4. rg.apache.ibatis.binding.BindingException: Mapper method 'com.dao.Cameao.getOnlineDayRation attempted to return null from a method with a primitive return type (float)

    本文为博主原创,未经允许不得转载: 异常展示如下: org.apache.ibatis.binding.BindingException: Mapper method 'com.dao.Cameao. ...

  5. C# 代码设置DataGrid列属性

    1 DataGridTableStyle dts = new DataGridTableStyle(); 2 dataGrid1.TableStyles.Clear(); 3 dts.MappingN ...

  6. Kafka 及 PyKafka 的使用

    1. Kafka 1. 简介 Kafka 是一种分布式的.分区的.多副本的基于发布/订阅的消息系统.它是通过 zookeeper 进行协调,常见可以用于 web/nginx 日志.访问日志.消息服务等 ...

  7. 遇到Io阻塞时会切换任务之【爬虫版】

    #! /usr/bin/env python3 # -*- coding:utf- -*- from urllib import request import gevent,time from gev ...

  8. js 转码思维

    <body> <script type="text/javascript"> // var el = document.createElement('scr ...

  9. ESXi时间同步

    ●建立NTP服务器 1,修改下面的注册表键把值设置为1.注册表键:HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\services\W32Time\TimeP ...

  10. idea忽略文件