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 相关文章推荐
vs2003 js文件编码问题的解决方法
Mar 20 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
Jul 08 Javascript
Javascript 颜色渐变效果的实现代码
Oct 01 Javascript
js onload处理html页面加载之后的事件
Oct 30 Javascript
JQuery异步加载PartialView的方法
Jun 07 Javascript
angular和BootStrap3实现购物车功能
Jan 25 Javascript
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
Aug 16 Javascript
解决Vue2.0 watch对象属性变化监听不到的问题
Sep 11 Javascript
vue项目设置scrollTop不起作用(总结)
Dec 21 Javascript
JavaScript实现图片伪异步上传过程解析
Apr 10 Javascript
如何实现echarts markline标签名显示自己想要的
Jul 20 Javascript
JS typeof fn === 'function' &amp;&amp; fn()详解
Aug 22 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
PHP网上调查系统
2006/10/09 PHP
php中$this-&amp;gt;含义分析
2009/11/29 PHP
php下关于Cannot use a scalar value as an array的解决办法
2010/08/08 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
2013/11/13 PHP
php使用反射插入对象示例分享
2014/03/11 PHP
ECMall支持SSL连接邮件服务器的配置方法详解
2014/05/19 PHP
php将csv文件导入到mysql数据库的方法
2014/12/24 PHP
浅谈PHP中output_buffering
2015/07/13 PHP
WordPress中创建用户角色的相关PHP函数使用详解
2015/12/25 PHP
PHP vsprintf()函数格式化字符串操作原理解析
2020/07/14 PHP
向当前style sheet中插入一个新的style实现方法
2013/04/01 Javascript
js调试系列 控制台命令行API使用方法
2014/06/18 Javascript
js实现简单秒表走动的时钟特效
2020/03/25 Javascript
JavaScript lodash常见用法系列小结
2016/08/24 Javascript
面试常见的js算法题
2017/03/23 Javascript
Express URL跳转(重定向)的实现方法
2017/04/07 Javascript
JavaScript实现的斑马线表格效果【隔行变色】
2017/09/18 Javascript
python动态加载包的方法小结
2016/04/18 Python
Python文件的读写和异常代码示例
2017/10/31 Python
python读取和保存视频文件
2018/04/16 Python
matplotlib.pyplot画图 图片的二进制流的获取方法
2018/05/24 Python
详解Python logging调用Logger.info方法的处理过程
2019/02/12 Python
Python操作列表常用方法实例小结【创建、遍历、统计、切片等】
2019/10/25 Python
Python动态导入模块:__import__、importlib、动态导入的使用场景实例分析
2020/03/30 Python
python程序输出无内容的解决方式
2020/04/09 Python
基于Python绘制个人足迹地图
2020/06/01 Python
python中turtle库的简单使用教程
2020/11/11 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
美国网上鞋子零售商:Dr. Scholl’s Shoes
2017/11/17 全球购物
德国运动营养和健身网上商店:Myprotein.de
2018/07/18 全球购物
大学生党员自我评价范文
2014/04/09 职场文书
2015年事业单位办公室文员工作总结
2015/04/24 职场文书
学生会干部任命书
2015/09/21 职场文书
幼师必备:幼儿园期末教师评语50条
2019/11/01 职场文书
python实现股票历史数据可视化分析案例
2021/06/10 Python
js不常见操作运算符总结
2021/11/20 Javascript