JavaScript面向对象之私有静态变量实例分析


Posted in Javascript onJanuary 14, 2016

本文实例分析了JavaScript面向对象之私有静态变量。分享给大家供大家参考,具体如下:

大家知道,私有实例变量的原理是根据作用域。

私有实例变量是在Javascript的function内部用var关键字实现,只在function内部有效。

仿照这个,提出私有静态变量的解决方案:

<script language="javascript" type="text/javascript">
var JSClass = (function() {
 var privateStaticVariable = "私有静态变量";
 var privateStaticMethod = function() {
  alert("调用私有静态方法");
 };
 return function() {
  this.test1 = function() {
   return privateStaticVariable;
  }
  this.test2 = function(obj) {
   privateStaticVariable = obj;
  }
  this.test3 = function() {
   privateStaticMethod();
  }
 };
})();
var testObject1 = new JSClass();
var testObject2 = new JSClass();
alert(testObject1.test1());
testObject1.test2("改变的私有静态变量");
alert(testObject2.test1());
testObject2.test3();
</script>

注意不是直接定义Javascript类,而是用一个匿名的function作为静态变量的容器,并返回Javascript类

更多关于JavaScript面向对象相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
基于jQuery的倒计时插件代码
May 07 Javascript
jquery清空textarea等输入框实现代码
Apr 22 Javascript
javascript禁用键盘功能键让右击及其他键无效
Oct 09 Javascript
使用JSLint提高JS代码质量方法分享
Dec 16 Javascript
js实现改进的仿蓝色论坛导航菜单效果代码
Sep 06 Javascript
基于javascript实现tab切换特效
Mar 29 Javascript
Ext JS框架中日期函数的用法及日期选择控件的实现
May 21 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
May 22 Javascript
JavaScript类的继承方法小结【组合继承分析】
Jul 11 Javascript
JS实现可针对算术表达式求值的计算器功能示例
Sep 04 Javascript
angular 未登录状态拦截路由跳转的方法
Oct 09 Javascript
JavaScript实现点击出现子菜单效果
Feb 08 Javascript
浏览器环境下JavaScript脚本加载与执行探析之defer与async特性
Jan 14 #Javascript
js实现input密码框提示信息的方法(附html5实现方法)
Jan 14 #Javascript
jQuery div拖拽用法实例
Jan 14 #Javascript
javascript检测flash插件是否被禁用的方法
Jan 14 #Javascript
分享jQuery插件的学习笔记
Jan 14 #Javascript
jQuery时间插件jquery.clock.js用法实例(5个示例)
Jan 14 #Javascript
Jquery easyui开启行编辑模式增删改操作
Jan 14 #Javascript
You might like
c#中的实现php中的preg_replace
2009/12/21 PHP
php中根据变量的类型 选择echo或dump
2012/07/05 PHP
php实用代码片段整理
2016/11/12 PHP
php-fpm开启状态统计的方法详解
2017/06/23 PHP
通过JAVASCRIPT读取ASP设定的COOKIE
2006/11/24 Javascript
用JavaScript实现单继承和多继承的简单方法
2009/03/29 Javascript
jquery插件之easing使用
2010/08/19 Javascript
Javascript绝句欣赏 一些经典的js代码
2012/02/22 Javascript
javascript阻止浏览器后退事件防止误操作清空表单
2013/11/22 Javascript
用jquery等比例控制图片宽高的具体实现
2014/01/28 Javascript
一个js过滤空格的小函数
2014/10/10 Javascript
js获取及判断键盘按键的方法
2015/12/01 Javascript
Easyui Datagrid自定义按钮列(最后面的操作列)
2017/07/13 Javascript
XMLHttpRequest对象_Ajax异步请求重点(推荐)
2017/09/28 Javascript
vue-cli配置环境变量的方法
2018/07/09 Javascript
vue中使用props传值的方法
2019/05/08 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
2020/04/11 Javascript
Vue-cli3生成的Vue项目加载Mxgraph方法示例
2020/05/31 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
[45:38]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#1Liquid VS Alliance第一局
2016/03/02 DOTA
Python Sqlite3以字典形式返回查询结果的实现方法
2016/10/03 Python
程序员的七夕用30行代码让Python化身表白神器
2019/08/07 Python
Python3安装pip工具的详细步骤
2019/10/14 Python
利用python如何实现猫捉老鼠小游戏
2020/12/04 Python
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
2012/12/28 HTML / CSS
【HTML5】Canvas绘制简单图片教程
2016/05/13 HTML / CSS
Magee 1866官网:Donegal粗花呢外套和大衣专家
2019/11/01 全球购物
比较一下entity bean和session bean
2013/12/27 面试题
优秀少先队员主要事迹材料
2014/05/28 职场文书
工地标语大全
2014/06/18 职场文书
2014幼儿园小班工作总结
2014/11/10 职场文书
离职感谢信怎么写
2015/01/22 职场文书
检讨书范文500字
2015/01/28 职场文书
2015年文员个人工作总结
2015/04/09 职场文书
python实现层次聚类的方法
2021/11/01 Python
Python基础 括号()[]{}的详解
2021/11/07 Python