当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript入门基础之私有变量

Javascript
jQuery1.3全新的Sizzle引擎实现CSS选择器
网页里做异步的跨域请求
WEBJX收集9个小巧实用的jQuery插件
JavaScript教程:switch-case
Javascript代码:校验身份证号程序
Webjx收集jQuery图片切换效果插件
JS触发A标签的点击事件
把Javascript代码放到body结束之上
jQuery教程:认识jQuery
Javascript 验证表单插件
javascript教程:call方法
不同页面中调用JS代码乱码问题
JavaScript获取事件对象的注意事项
非常简单的jQuery实现网页图片圆角
史上最昂贵的 Javascript 代码
学习JavaScript后的小结
Javascript教程:caller函数和callee属性
解决用户恶意刷新的二级高亮样式菜单
PS教程:用Photoshop模拟日全食
JS实例教程:检查变量类型

Javascript 中的 javascript入门基础之私有变量


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-02-27   浏览: 246 ::
收藏到网摘: n/a

开始接触这门语言时,可能都会觉得这门语言缺少访问控制符(如public、private、protected),从而导致不能定义私有变量和私有方法。但经过进一步了解就会知道javascript同样可以有私有变量。 先看javascript的普通函数用法
复制代码 代码如下:

function sum(a,b){
var c = 10;
function add(){
c++;
}
add();
return a + b + c;
}
var d = sum(4,5);
alert(d) // 20

可以看出,外部要和函数sum进行交互,只能通过调用和返回值形式,无法访问里面的参数c和内部函数add()。这对于函数来说属于正常逻辑。
接下来看javascript的类用法
复制代码 代码如下:

function sum(pa,pb) {
this.a = pa;
this.b = pb;
this.show = function(){
alert(this.a + this.b);
}
}
var t = new sum(4,5);
t.show();
alert(t.a);

这里通过new创建了sum的对象t。通过t可以调用方法show来显示参数和,也可以直接取参数信息
结合两种方式就产生私有变量和方法的效果。
复制代码 代码如下:

function sum(pa,pb) {
var __c = 10; //私有变量
function __addc(){ //私有方法
__c++;
}
this.a = pa; //公有变量
this.b = pb; //公有变量
this.setc = function(pc){ //公有方法
__c = pc;
__addc();
}
this.show = function(){ //公有方法
alert(this.a + this.b + __c);
}
}
var t = new sum(4,5);
t.setc(1);
t.show();

从这个例子可以看出,外部无法调用var声明的变量和方法,但外部可以通过公有方法为桥梁实现与私有变量交互
建议:为了便于阅读与区分,私有变量和方法在命名前加一个或者两个下划线。