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 相关文章推荐
基于jQuery实现模拟页面加载进度条
Apr 01 Javascript
jQuery弹出层始终垂直居中相对于屏幕或当前窗口
Apr 01 Javascript
Jquery选择子控件"大于号"和" "区别介绍及使用示例
Jun 25 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
Sep 28 Javascript
jQuery中empty()方法用法实例
Jan 16 Javascript
JS动态修改iframe内嵌网页地址的方法
Apr 01 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
Dec 03 Javascript
基于javascript实现页面加载loading效果
Sep 15 Javascript
Angular.Js的自动化测试详解
Dec 09 Javascript
微信小程序开发(二)图片上传+服务端接收详解
Jan 11 Javascript
Array数组对象中的forEach、map、filter及reduce详析
Aug 02 Javascript
JS实现的雪花飘落特效示例
Dec 03 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
国产动画《伍六七》原声大碟大卖,啊哈娱乐引领音乐赋能IP的新尝试
2020/03/08 国漫
PHP curl使用实例
2015/07/02 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
2019/10/17 PHP
js脚本获取webform服务器控件的方法
2014/05/16 Javascript
简单谈谈javascript代码复用模式
2015/01/28 Javascript
jQuery实现仿美橙互联两级导航菜单的方法
2015/03/09 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
神奇!js+CSS+DIV实现文字颜色渐变效果
2016/03/16 Javascript
详解Angular中$cacheFactory缓存的使用
2016/08/19 Javascript
jQuery表单对象属性过滤选择器实例详解
2016/09/13 Javascript
jQuery UI插件实现百度提词器效果
2016/11/21 Javascript
jQuery插件ajaxFileUpload使用详解
2017/01/10 Javascript
基于JavaScript实现自定义滚动条
2017/01/25 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
vue获取当前激活路由的方法
2018/03/17 Javascript
在vue中使用express-mock搭建mock服务的方法
2018/11/07 Javascript
Node.js + express实现上传大文件的方法分析【图片、文本文件】
2019/03/14 Javascript
js实现金山打字通小游戏
2020/07/24 Javascript
Django实现组合搜索的方法示例
2018/01/23 Python
python 常见字符串与函数的用法详解
2018/11/23 Python
Linux上使用Python统计每天的键盘输入次数
2019/04/17 Python
python aiohttp的使用详解
2019/06/20 Python
Python列表如何更新值
2020/05/27 Python
用python给csv里的数据排序的具体代码
2020/07/17 Python
Django如何继承AbstractUser扩展字段
2020/11/27 Python
selenium+python实现基本自动化测试的示例代码
2021/01/27 Python
美国领先的奢侈美容零售商:Bluemercury
2017/07/26 全球购物
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
岗位职责的构建方法
2014/02/01 职场文书
简历中自我评价怎么写
2014/02/12 职场文书
2015年十一国庆节演讲稿
2015/03/20 职场文书
离婚上诉状范文
2015/05/23 职场文书
浅谈如何提高PHP代码质量之单元测试
2021/05/28 PHP
pandas数值排序的实现实例
2021/07/25 Python
Golang 并发编程 SingleFlight模式
2022/04/26 Golang