JavaScript 面向对象的之私有成员和公开成员


Posted in Javascript onMay 04, 2010

上两节讲了 JavaScript 面向对象之命名空间 与 javascript 面向对象的JavaScript类,大家可以先看上面的再继续往下看。

其实很简单,废话少说,看了下面的代码及注释相信你就会一目了然!

//声明类,就是一个方法,其实在JavaScript中,命名空间、类、成员.... 一切皆对象 
MyClass =function(){ 
var _this=this; 
//私有变量 
var aa="11"; 
//公开变量 
this.bb="22"; 
//私有方法 
function fun1(){ 
alert(aa); 
alert(_this.bb); 
} 
//私有方法 
var fun2=function(){ 
alert(aa); 
alert(_this.bb); 
} 
//公开方法 
this.fun3=function(){ 
alert(aa); 
alert(_this.bb); 
} 
} 
//测试如下: 
var mc=new MyClass(); 
mc.aa="AA";//错误 
mc.bb="BB";//正确 
mc.fun1();//错误 
mc.fun2();//错误 
mc.fun3();//正确

一言以蔽之:在类的内部
用 var 关键字声明的变量或方法是私有的;
用function 关键字声明的方法是私有的;
用this关键字声明的变量或方法是公开的。

以上说的都是针对于实例类而言的,而对于静态类那就更简单了,JavaScript静态类其实就是一个json对象,所以的它的所有成员都是公开的,都是对外可见的!

Javascript 相关文章推荐
IE下JS读取xml文件示例代码
Aug 05 Javascript
javascript中的正则表达式使用详解
Aug 30 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
Oct 15 Javascript
php利用curl获取远程图片实现方法
Oct 26 Javascript
深入理解jQuery layui分页控件的使用
Aug 17 Javascript
Jquery表单验证失败后不提交的解决方法
Oct 18 Javascript
Vue.js实现一个todo-list的上移下移删除功能
Jun 26 Javascript
jQuery实现可兼容IE6的淡入淡出效果告警提示功能示例
Sep 20 jQuery
vue登录路由验证的实现
Dec 13 Javascript
详解angular路由高亮之RouterLinkActive
Apr 28 Javascript
用vue-cli开发vue时的代理设置方法
Sep 20 Javascript
深入理解react 组件类型及使用场景
Mar 07 Javascript
javascript 面向对象的JavaScript类
May 04 #Javascript
JavaScript 面向对象之命名空间
May 04 #Javascript
10个实用的脚本代码工具
May 04 #Javascript
利用location.hash实现跨域iframe自适应
May 04 #Javascript
Array.prototype 的泛型应用分析
Apr 30 #Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
Apr 30 #Javascript
JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解
Apr 29 #Javascript
You might like
无线电的诞生过程
2021/03/01 无线电
PHP 数组基本操作小结(推荐)
2016/06/13 PHP
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
在jQuery中 关于json空对象筛选替换
2013/04/15 Javascript
JQGrid的用法解析(列编辑,添加行,删除行)
2013/11/08 Javascript
JavaScript不刷新实现浏览器的前进后退功能
2014/11/05 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
jQuery插件Timelinr 实现时间轴特效
2015/10/04 Javascript
浅析JavaScript作用域链、执行上下文与闭包
2016/02/01 Javascript
Jquery给当前页或者跳转后页面的导航栏添加选中后样式的实例
2016/12/08 Javascript
浅谈Vuex的状态管理(全家桶)
2017/11/04 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
angular 组件通信的几种实现方式
2018/07/13 Javascript
解决微信小程序云开发中获取数据库的内容为空的方法
2019/05/15 Javascript
小程序点击图片实现png转jpg
2019/10/22 Javascript
Vue在chrome44偶现点击子元素事件无法冒泡的解决方法
2019/12/15 Javascript
微信小程序自定义modal弹窗组件的方法详解
2020/12/20 Javascript
Python读写ini文件的方法
2015/05/28 Python
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
Python变量访问权限控制详解
2019/06/29 Python
Python封装成可带参数的EXE安装包实例
2019/08/24 Python
10行Python代码计算汽车数量的实现方法
2019/10/23 Python
python的reverse函数翻转结果为None的问题
2020/05/11 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
澳大利亚首屈一指的在线购物目的地:Kogan.com
2017/02/02 全球购物
Carolina Lemke Berlin澳大利亚官网:时尚太阳镜品牌
2019/09/17 全球购物
Oracle的内存结构(Memory structures)
2015/06/10 面试题
如何开启linux的ssh服务
2013/06/03 面试题
高等教育学专业自荐书
2014/06/17 职场文书
2014年个人业务工作总结
2014/11/17 职场文书
2014年小学少先队工作总结
2014/12/18 职场文书
讲座通知范文
2015/04/23 职场文书
幼儿园教师师德师风承诺书
2015/04/28 职场文书
决心书格式及范文
2019/06/24 职场文书
python编写函数注意事项总结
2021/03/29 Python
Nginx实现负载均衡的项目实践
2022/03/18 Servers