用闭包技术实现成员变量私有的javascript bean
标题看着挺高竿儿的,其实没啥 ~
function jsBean(){
this.field1 = null;
var field2 = null;
this.setField2= function(arg){
field2 = arg;
}
this.getField2 = function(){
return field2;
}
}
测试代码:
var bean = new jsBean();
alert(bean.field1); //弹出 null
alert(bean.field2);//弹出 undefined
alert(bean.getField2());//弹出 null
在javascript中,function 才是最高级别的对象~
有人说了,闭包干啥,直接都暴露出来不就好了?
有人说了,有这样的东西有什么用?我在javascript里面从来也用不到,它既不能直接放到一个text 文本框里面,也不能传给ajax后台....
答案很简单,这样写更面向对象,你的代码更易读易维护....,想象一下你的java code为什么不用String 和 int double 这些类型到处用,而是在需要的时候定义一个VO?