视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
JavaScript中的this关键字介绍与使用实例_javascript技巧
2020-11-27 21:10:17 责编:小采
文档


当创建一个类的时候,如果希望下面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类 www.gxlcms.com
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();
function test(){
alert(this.v);
}
var v = 902;
window.test();

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

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

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

下载本文
显示全文
专题