您的位置:首页 > Web前端 > JavaScript

javascript入门基础之私有变量

2010-02-23 00:00 489 查看
先看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声明的变量和方法,但外部可以通过公有方法为桥梁实现与私有变量交互
建议:为了便于阅读与区分,私有变量和方法在命名前加一个或者两个下划线。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: