JavaScript知识点总结(十)之this关键字


Posted in Javascript onMay 31, 2016

this是Javascript语言的一个关键字。随着函数使用场合的不同,this的值会发生变化。但是有一个总的原则,那就是this指的是,调用函数的那个对象。JavaScript中的this指针是一个动态的变量,一个方法内的this指针并不是始终指向定义该方法的对象的。Javascript中this关键字通常指向当前函数的拥有者。

下面通过代码给大家介绍下。具体代码如下所示:

<script type="text/javascript">
function Person(){
/*使用var 属性名定义的属性是类的私有属性,外界无法访问,要想被外界访问,就要使用公共方法*/
var QQ=""; 
var Email="@qq.com";
/*使用this.属性名定义的属性就是类的公共属性,是可以被外界访问的*/
this.Name="孤傲苍狼";
this.Age=;
/*定义Person类的公共方法,凡是定义类的公共属性和公共方法都要使用this*/
this.Show=function(){//定义Person类的公共方法(特权方法)
alert("QQ="+QQ+"\tEmail="+Email);
}
/*定义Person类的私有方法*/
function Show(){//这是Person类的一个私有方法,只能在Person类内部使用
}
}
var p = new Person();
alert("私有属性p.QQ="+p.QQ+"\t"+"p.Email="+p.Email);
alert("公共属性p.Name="+p.Name+"\t"+"p.Age="+p.Age);
p.Show();
//p.Show();//这里会报错,无法调用Person类的私有方法,
/*
Window 对象描述
Window 对象表示一个浏览器窗口或一个框架。在客户端 JavaScript 中,Window 对象是全局对象,所有的表达式都在当前的环境中计算。
也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来使用。例如,可以只写 document,而不必写 window.document。
同样,可以把当前窗口对象的方法当作函数来使用,如只写 alert(),而不必写 Window.alert()。
*/
function Test(){
alert(this.v);
}
v=;
Test();
window.Test();//记住一句话:哪个对象调用this所在的函数,那么this代表的就是哪个对象实例,这里是window对象调用Test()方法,因此此时this指的就是window对象
function Test(){
this.fnTest=function(){
alert(this.v);
}
}
var t = new Test();
t.v="记住一句话:哪个对象调用this所在的函数,那么this代表的就是哪个对象实例";
t.fnTest();//这里是t对象调用Test()方法,因此此时this指的就是t对象
</script>

JavaScript的this总结:

1、this不能在类定义的外部使用,只能在类定义的内部使用。

2、哪个对象调用this所在的函数,那么this代表的就是哪个对象实例。

关于JavaScript知识点总结(十)之this关键字的理解就给大家介绍这里,希望对大家有所帮助!

Javascript 相关文章推荐
javascript之ESC(第二类混淆)
May 06 Javascript
jQuery下通过replace字符串替换实现大小图片切换
May 22 Javascript
JavaScript判断用户是否对表单进行了修改的方法
Mar 18 Javascript
JS+CSS实现简单滑动门(滑动菜单)效果
Sep 19 Javascript
javascript伸缩型菜单实现代码
Nov 16 Javascript
基于jQuery实现响应式圆形图片轮播特效
Nov 25 Javascript
jquery 中toggle的2种用法详解(推荐)
Sep 02 Javascript
ExtJs的Ext.Ajax.request实现waitMsg等待提示效果
Jun 14 Javascript
React应用中使用Bootstrap的方法
Aug 15 Javascript
JavaScript实现随机点名程序
Mar 25 Javascript
JavaScript实现H5接金币功能(实例代码)
Feb 22 Javascript
原生JS中应该禁止出现的写法
May 05 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
May 31 #Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
May 31 #Javascript
JavaScript知识点总结(四)之逻辑OR运算符详解
May 31 #Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
May 31 #Javascript
jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
May 31 #Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
May 31 #Javascript
TinyMCE汉化及本地上传图片功能实例详解
May 31 #Javascript
You might like
Win2000+Apache+MySql+PHP4+PERL安装使用小结
2006/10/09 PHP
一个简易需要注册的留言版程序
2006/10/09 PHP
php 文件缓存函数
2011/10/08 PHP
基于PHP CURL获取邮箱地址的详解
2013/06/03 PHP
浅析PHP中的UNICODE 编码与解码
2013/06/29 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
php parse_str() 函数的定义和用法
2016/05/23 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
2019/07/26 PHP
Jquery 例外被抛出且未被接住原因介绍
2013/09/04 Javascript
使用js判断数组中是否包含某一元素(类似于php中的in_array())
2013/12/12 Javascript
使用JS或jQuery模拟鼠标点击a标签事件代码
2014/03/10 Javascript
15款jQuery分布引导插件分享
2015/02/04 Javascript
基于Node.js的WebSocket通信实现
2017/03/11 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
VUE引入第三方js包及调用方法讲解
2019/03/01 Javascript
Vue.js中该如何自己维护路由跳转记录
2019/05/19 Javascript
利用Vue-draggable组件实现Vue项目中表格内容的拖拽排序
2019/06/07 Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
2020/08/05 Javascript
jQuery实现移动端扭蛋机抽奖
2020/11/08 jQuery
Python中数字以及算数运算符的相关使用
2015/10/12 Python
python rsa 加密解密
2017/03/20 Python
Django文件存储 自己定制存储系统解析
2019/08/02 Python
Python 字符串处理特殊空格\xc2\xa0\t\n Non-breaking space
2020/02/23 Python
python根据用户需求输入想爬取的内容及页数爬取图片方法详解
2020/08/03 Python
python3.5的包存放的具体路径
2020/08/16 Python
HTML5中图片之间的缝隙完美解决方法
2017/07/07 HTML / CSS
英国领先的男装设计师服装购物网站:Mainline Menswear
2018/02/04 全球购物
文化与传播毕业生求职信
2014/03/09 职场文书
黄金搭档广告词
2014/03/21 职场文书
好人好事演讲稿
2014/09/01 职场文书
单位在职证明书
2014/09/11 职场文书
村党组织公开承诺书
2015/04/30 职场文书
PHP设计模式(观察者模式)
2021/07/07 PHP
mongoDB数据库索引快速入门指南
2022/03/23 MongoDB