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 相关文章推荐
extjs之去除s.gif的影响
Dec 25 Javascript
javasctipt如何显示几分钟前、几天前等
Apr 30 Javascript
深入了解JavaScript中的Symbol的使用方法
Jul 28 Javascript
浅谈js构造函数的方法与原型prototype
Jul 04 Javascript
基于zepto.js实现手机相册功能
Jul 11 Javascript
webpack+react+antd脚手架优化的方法
Apr 02 Javascript
axios简单实现小程序延时loading指示
Jul 30 Javascript
在angularJs中进行数据遍历的2种方法
Oct 08 Javascript
vue中keep-alive组件的入门使用教程
Jun 06 Javascript
详细分析JavaScript中的深浅拷贝
Sep 17 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
Oct 13 Javascript
Vue3如何理解ref toRef和toRefs的区别
Feb 18 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 文件上传模型,支持多文件上传
2009/08/13 PHP
linux系统下php安装mbstring扩展的二种方法
2014/01/20 PHP
PHP.ini安全配置检测工具pcc简单介绍
2015/07/02 PHP
yii2.0框架数据库操作简单示例【添加,修改,删除,查询,打印等】
2020/04/13 PHP
eval与window.eval的差别分析
2011/03/17 Javascript
5个javascript的数字格式化函数分享
2011/12/07 Javascript
Jquery获取复选框被选中值的简单方法
2013/07/04 Javascript
模拟jQuery中的ready方法及实现按需加载css,js实例代码
2013/09/27 Javascript
轻量级的原生js日历插件calendar.js使用指南
2015/04/28 Javascript
jquery实现简单手风琴菜单效果实例
2015/06/13 Javascript
JQuery的Pager分页器实现代码
2016/05/03 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
浅谈jQuery中Ajax事件beforesend及各参数含义
2016/12/03 Javascript
AngularJS自定义控件实例详解
2016/12/13 Javascript
AngularJS实现网站换肤实例
2021/02/19 Javascript
js评分组件使用详解
2017/06/06 Javascript
详解angular笔记路由之angular-router
2017/09/12 Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
2017/12/19 Javascript
vue路由前进后退动画效果的实现代码
2018/12/10 Javascript
Vue渲染过程浅析
2019/03/14 Javascript
vue实现新闻展示页的步骤详解
2019/04/11 Javascript
JavaScript中条件语句的优化技巧总结
2020/12/04 Javascript
使用Python中的线程进行网络编程的入门教程
2015/04/15 Python
Python中断言Assertion的一些改进方案
2016/10/27 Python
python executemany的使用及注意事项
2017/03/13 Python
Python运维自动化之nginx配置文件对比操作示例
2018/08/29 Python
CSS3中currentColor关键字的妙用
2016/02/27 HTML / CSS
关于iframe跨域使用postMessage的实现
2019/10/29 HTML / CSS
美国在线面料商店:Online Fabric Store
2018/07/26 全球购物
丝芙兰加拿大官方网站:SEPHORA加拿大
2018/11/20 全球购物
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
汉语专业应届生求职信
2013/10/01 职场文书
工作证明格式范文
2015/06/15 职场文书
2015年“我们的节日·中秋节”活动总结
2015/07/30 职场文书
党风廉政建设心得体会
2019/05/21 职场文书
古诗文之爱国名句(77句)
2019/09/24 职场文书