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 相关文章推荐
javascript 操作select下拉列表框的一点小经验
Mar 20 Javascript
Dom 结点创建 基础知识
Oct 01 Javascript
jQuery的attr与prop使用介绍
Oct 10 Javascript
AngularJS基础 ng-keyup 指令简单示例
Aug 02 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
Aug 02 Javascript
利用PM2部署node.js项目的方法教程
May 10 Javascript
js截取字符串功能的实现方法
Sep 27 Javascript
关于vue面试题汇总
Mar 20 Javascript
JS使用Date对象实时显示当前系统时间简单示例
Aug 23 Javascript
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
Mar 29 Javascript
浅析我对JS延迟异步脚本的思考
Oct 12 Javascript
Antd表格滚动 宽度自适应 不换行的实例
Oct 27 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
删除数组元素实用的PHP数组函数
2008/08/18 PHP
php实现网站插件机制的方法
2009/11/10 PHP
PHP调用Twitter的RSS的实现代码
2010/03/10 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
Laravel 5框架学习之环境与配置
2015/04/08 PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
2015/07/10 PHP
PHP实现微信对账单处理
2018/10/01 PHP
js常用函数 不错
2006/09/08 Javascript
greybox——不开新窗口看新的网页
2007/02/20 Javascript
JQuery.closest(),parent(),parents()寻找父结点
2012/02/17 Javascript
你必须知道的Javascript知识点之"this指针"的应用
2013/04/23 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
浅析Javascript的自动分号插入(ASI)机制
2016/09/29 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
详解webpack打包第三方类库的正确姿势
2018/10/20 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
2020/01/11 jQuery
解决基于 keep-alive 的后台多级路由缓存问题
2020/12/23 Javascript
[04:05]TI9战队采访 - Natus Vincere
2019/08/22 DOTA
Python Web框架Pylons中使用MongoDB的例子
2013/12/03 Python
Sublime开发python程序的示例代码
2018/01/24 Python
Python高级特性切片(Slice)操作详解
2018/09/27 Python
使用Python实现跳帧截取视频帧
2019/05/31 Python
Python使用APScheduler实现定时任务过程解析
2019/09/11 Python
Python基于QQ邮箱实现SSL发送
2020/04/26 Python
Django正则URL匹配实现流程解析
2020/11/13 Python
关于HTML5+ API plusready的兼容问题
2020/11/20 HTML / CSS
美国电子产品购物网站:BuyDig.com
2020/06/17 全球购物
linux面试题参考答案(6)
2016/06/23 面试题
JS原生实现轮播图的几种方法
2021/03/23 Javascript
高中生期末评语
2014/01/28 职场文书
2014年端午节活动方案
2014/03/11 职场文书
聘任协议书(挂靠)
2015/09/21 职场文书
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python