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 相关文章推荐
北京奥运官方网站幻灯切换效果flash版打包下载
Jan 30 Javascript
Jquery显示、隐藏元素以及添加删除样式
Aug 09 Javascript
js中的数组Array定义与sort方法使用示例
Aug 29 Javascript
jQuery中用dom操作替代正则表达式
Dec 29 Javascript
jQuery简单实现隐藏以及显示特效
Feb 26 Javascript
JavaScript实现简单图片翻转的方法
Apr 17 Javascript
vue模板语法-插值详解
Mar 06 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
Jul 22 jQuery
Vue用v-for给循环标签自身属性添加属性值的方法
Oct 18 Javascript
vue项目中实现图片预览的公用组件功能
Oct 26 Javascript
Vue 实现把表单form数据 转化成json格式的数据
Oct 29 Javascript
vue中实现点击空白区域关闭弹窗的两种方法
Dec 30 Vue.js
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
PHP中实现图片的锐化
2006/10/09 PHP
多数据表共用一个页的新闻发布
2006/10/09 PHP
php中OR与|| AND与&amp;&amp;的区别总结
2013/10/26 PHP
在SAE上搭建最新wordpress的方法
2014/12/21 PHP
Laravel使用Caching缓存数据减轻数据库查询压力的方法
2016/03/15 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
jQuery 事件队列调整方法
2009/09/18 Javascript
JS+CSS实现精美的二级导航效果代码
2015/09/17 Javascript
JS随机打乱数组的方法小结
2016/06/22 Javascript
BootStrap实现响应式布局导航栏折叠隐藏效果(在小屏幕、手机屏幕浏览时自动折叠隐藏)
2016/11/30 Javascript
JavaScript继承定义与用法实践分析
2018/05/28 Javascript
基于node简单实现RSA加解密的方法步骤
2019/03/21 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
Vue结合路由配置递归实现菜单栏功能
2020/06/16 Javascript
Node.JS如何实现JWT原理
2020/09/18 Javascript
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
详解如何用django实现redirect的几种方法总结
2018/11/22 Python
理想高通滤波实现Python opencv示例
2019/01/30 Python
python的几种矩阵相乘的公式详解
2019/07/10 Python
python switch 实现多分支选择功能
2020/12/21 Python
css3 media 响应式布局的简单实例
2016/08/03 HTML / CSS
印度尼西亚最大的电商平台:Tokopedia(印尼版淘宝)
2017/12/02 全球购物
如何启动时不需输入用户名与密码
2014/05/09 面试题
常见的软件开发流程有哪些
2015/11/14 面试题
造价工程师个人求职信
2013/09/21 职场文书
实习生体会的自我评价范文
2013/11/28 职场文书
公积金转移接收函
2014/01/11 职场文书
电信营业员自我评价分享
2014/01/17 职场文书
酒店节能减排方案
2014/05/26 职场文书
经销商年会策划方案
2014/05/29 职场文书
向国旗敬礼学生寄语大全
2014/09/30 职场文书
2015入党个人自传范文
2015/06/26 职场文书
小学同学聚会感言
2015/07/30 职场文书
2016年大学迎新晚会工作总结
2015/10/15 职场文书
分析设计模式之模板方法Java实现
2021/06/23 Java/Android
如何在Python中妥善使用进度条详解
2022/04/05 Python