JavaScript中的this关键字介绍

原创 2012年03月28日 21:49:31

JavaScript其实一门基于或者说是面向对象的语言,这样的话,this这个关键字,在类的内部就显得尤为重要,当

创建一个类的时候,如果希望下面new出来的每个类都拥有一些通用的变量或者其他的函数,这个this关键字这是最好

的方式。

当然,既然是面向对象的语言,必然存在访问权限的问题,这里也和this关键字息息相关。下面我们来演示一个例

子来说明一下这个类的访问权限的问题.

 //Person类
    function Person(){
		var name="abc";//var声明的都是类内部的私有变量,外部无法访问
		var age = 20;
		
		this.name2="edg";//this声明的是公开变量,外部可以访问
		
		this.show=function(){//shou方法是公开的方法,可以被外部访问,而且可以访问类内部私有方法
		window.alert(name);
		}
		
		function show2(){//shouw2方法是类内部的私有方法,不能被外部访问
			
		}
	}

	var p1 = new Person();
	document.writeln(p1.name2+p1.name);
	p1.show();

这个Person其实就是一个类,类名就是Person,其中声明的变量,var开头的都是私有变量,只能在类的内部实现访

问,而通过this关键字声明的变量是公有的变量,可以在外部访问。当然,只需要公开一个方法,就可以实现外部访

问类内部的私有变量,这个this.show=function(){}就是声明一个共有方法,在类的外部也是可以调用的。当然,以此

类推,直接声明的方法是私有的方法/

下面再看一个例子

	function test(){
		alert(this.v);
	}
	var v = 902;
	window.test();

代码很简短,这个的意思是,谁调用的这个方法,这个this就是指的那个对象,比如,window对象调用的test方法,

所以在test方法内部,这个this,v就是指在window也就是外部全局是否定义了一个v变量,通过查看可以知道,定义了

一个var v = 902;所以这个方法调用的其实就是v的值.



相关文章推荐

Javascript中的this关键字(精华版)

ECMA-262解释: The this keyword evaluates to the value of the ThisBinding of the current execution c...

javascript必知必会之this关键字及scope

javascript必知必会之this关键字及scope 本博客所有内容采用 Creative Commons Licenses 许可使用. 引用本内容时,请保留 朱涛, 出处 ,并且 非商...

JavaScript 面向对象之 this 关键字详解

js面向(基于)对象编程——类(原型对象)与对象 this—问题提出 在实际编程中,我们可能有这样的需求,当我们创建一个对象后,就希望该对象自动的拥有某些属性(比如:当我们创建一个Pers...

理解javascript中this关键字---转载

跟别的语言大相径庭的JavaScript 的this 总是指向一个对象,而具体指向哪个对象是在运行时基于函数的执行环境动态绑定的,而非函数被声明时的环境。除去不常用的with 和eval 的情况,具体...

JavaScript面向对象编程之this关键字

this总是返回一个对象,简单说,就是返回属性或方法“当前”所在的对象。 在全局环境使用this,它指的就是顶层对象window。 console.log(this);//window var a=2...

关于Javascript中的this关键字

第一种情况:如果是一个全局函数,则this相当于window对象;全局函数相当于window对象的方法,全局变量相当于window对象的属性 输出的结果: 这个时候this相当于window ...

javascript中作用域与关键字this

一.作用域 当代码在一个环境中执行时,会创建由变量对象构成的一个作用域链,其作用就是保证对执行环境有权访问的所有变量和函数的有序访问。标示符解析是沿着作用域链一级一级的搜索标示符过程,搜索过...

javascript里this关键字小析及部分心得

看了部分this的文章 结合着说一下吧  首先说一下 this指代的对象 现在理解为 this所在的函数是对象A的一个方法 那么this就指代对象A; JavaScript  this定义:thi...

javascript this 关键字以及四种函数调用模式

最近在学习javascript ,被js中的this关键字搞得晕头转向,都不知道这个东西到底是干什么的,不同的地方所指的对象又不一样。在查询了很多的资料以后,终于有了一些眉目了。 this的定义:在j...

Javascript this关键字

Javascript this关键字 经常this使用上比较混乱,所以总结一下。 Javascript中的this其实跟java、C++等oo语言的含义,其实没有什么太大不同,但是由于javasc...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript中的this关键字介绍
举报原因:
原因补充:

(最多只允许输入30个字)