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学习笔记之三 extjs form更多的表单项
Jan 07 Javascript
jquery form 加载数据示例
Apr 21 Javascript
Node.js 服务器端应用开发框架 -- Hapi.js
Jul 29 Javascript
javascript闭包的理解
Apr 01 Javascript
JS实现网页每隔3秒弹出一次对话框的方法
Nov 09 Javascript
js中创建对象的几种方式
Feb 05 Javascript
vuejs使用FormData实现ajax上传图片文件
Aug 08 Javascript
微信小程序按钮去除边框线分享页面功能
Aug 27 Javascript
详解基于Vue/React项目的移动端适配方案
Aug 23 Javascript
JavaScript创建、读取和删除cookie
Sep 03 Javascript
vue实现二级导航栏效果
Oct 19 Javascript
Vue中computed和watch有哪些区别
Dec 19 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检测图片木马多进制编程实践
2013/04/11 PHP
使用PHP免费发送定时短信的实例
2016/10/24 PHP
PHP常见加密函数用法示例【crypt与md5】
2019/01/27 PHP
JavaScript获取GridView中用户点击控件的行号,列号
2009/04/14 Javascript
ExtJS下grid的一些属性说明
2009/12/13 Javascript
jQuery获得页面元素的绝对/相对位置即绝对X,Y坐标
2014/03/06 Javascript
利用函数的惰性载入提高javascript代码执行效率
2014/05/05 Javascript
在Node.js应用中使用Redis的方法简介
2015/06/24 Javascript
基于jquery实现简单的手风琴特效
2015/11/24 Javascript
使用EVAL处理jqchart jquery 折线图返回数据无效的解决办法
2015/11/26 Javascript
图解Sublime Text3使用技巧
2015/12/21 Javascript
使用Vue父子组件通信实现todolist的功能示例代码
2019/04/11 Javascript
Jquery属性的获取/设置及样式添加/删除操作技巧分析
2019/12/23 jQuery
学习 Vue.js 遇到的那些坑
2021/02/02 Vue.js
[02:04]2014DOTA2国际邀请赛 DK一个时代的落幕
2014/07/21 DOTA
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
python实现DES加密解密方法实例详解
2015/06/30 Python
Python list操作用法总结
2015/11/10 Python
Python实现二维数组输出为图片
2018/04/03 Python
Python多线程编程之多线程加锁操作示例
2018/09/06 Python
Python统计一个字符串中每个字符出现了多少次的方法【字符串转换为列表再统计】
2019/05/05 Python
python实现大文本文件分割
2019/07/22 Python
python 实现rolling和apply函数的向下取值操作
2020/06/08 Python
Python urllib库如何添加headers过程解析
2020/10/05 Python
马来西亚在线时尚女装商店:KEI MAG
2017/09/28 全球购物
大一自我鉴定范文
2013/10/04 职场文书
药物学专业学生的自我评价
2013/10/27 职场文书
客户经理岗位职责
2013/12/08 职场文书
收银员的岗位职责范本
2014/02/04 职场文书
中国梦口号
2014/06/13 职场文书
三严三实对照检查材料
2014/09/22 职场文书
工会文体活动总结
2015/05/07 职场文书
利用ajax+php实现商品价格计算
2021/03/31 PHP
python 模块重载的五种方法
2021/04/24 Python
详解CSS中的特指度和层叠问题
2021/07/15 HTML / CSS
Go Grpc Gateway兼容HTTP协议文档自动生成网关
2022/06/16 Golang