javascript闭包的高级使用方法实例

 更新时间:2013年07月04日 15:49:56   作者:  
这篇文章介绍了javascript闭包的高级使用方法实例,有需要的朋友可以参考一下
扩展
Code:
复制代码 代码如下:

var blogModule = (function (my) {
 my.AddPhoto = function () {
//添加内部代码
 };
 return my;
}(blogModule));

Say:
将自身传进方法,然后实现了方法的扩展,有点象零件组装啊
Code:
复制代码 代码如下:

var blogModule = (function (my) {var oldAddPhotoMethod = my.AddPhoto;
 my.AddPhoto = function () {  // 重载方法,依然可通过oldAddPhotoMethod调用旧的方 }; return my;}(blogModule));

Say:
好处就是可以调用以前的方法。
克隆与继承
Code:
复制代码 代码如下:

var blogModule = (function (old) { var my = {}, key; for (key in old) { if (old.hasOwnProperty(key)) { my[key] = old[key]; } } var oldAddPhotoMethod = old.AddPhoto; my.AddPhoto = function () { // 克隆以后,进行了重写,当然也可以继续调用oldAddPhotoMethod }; return my; } (blogModule));

Say:
简单的克隆实现
跨文件共享私有对象
Code:
复制代码 代码如下:

var blogModule = (function (my) { var _private = my._private = my._private || {}, _seal = my._seal = my._seal || function () { delete my._private; delete my._seal; delete my._unseal; }, _unseal = my._unseal = my._unseal || function () { my._private = _private; my._seal = _seal; my._unseal = _unseal; }; return my; } (blogModule || {}));

Say:
blogModule._seal()上锁,_unseal() 开锁,实现内部变量的私有化。我认为这样实现并不是最好的,但是我们可以学习下这个开锁闭锁的功能。

相关文章

  • 详解A标签中href=

    详解A标签中href=""的几种用法

    这篇文章主要介绍了a标签中href=""的几种用法 ,需要的朋友可以参考下
    2017-08-08
  • JS搜狐面试题分析

    JS搜狐面试题分析

    这篇文章主要介绍了JS搜狐面试题,涉及javascript数组、字符串及面向对象程序设计相关技巧,需要的朋友可以参考下
    2016-12-12
  • JavaScript实现简单的弹窗效果

    JavaScript实现简单的弹窗效果

    这篇文章主要为大家详细介绍了JavaScript实现简单的弹窗效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • 微信小程序中获取设备信息的方法

    微信小程序中获取设备信息的方法

    这篇文章主要给大家介绍了关于微信小程序中获取设备信息的相关资料,微信小程序是一种在微信平台上运行的应用程序,它具有轻量化、便捷性和高兼容性的特点,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-07-07
  • 微信小程序上传多图到服务器并获取返回的路径

    微信小程序上传多图到服务器并获取返回的路径

    这篇文章主要介绍了微信小程序上传多图到服务器并获取返回的路径,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • js 淘宝首页的拼音排序效果

    js 淘宝首页的拼音排序效果

    模仿淘宝首页的拼音排序效果代码。
    2009-05-05
  • javascript getElementByTagName的使用

    javascript getElementByTagName的使用

    javascript getElementByTagName当鼠标放上去时将超链接的颜色设为蓝色的。
    2009-06-06
  • js中indexOf()的简单使用示例

    js中indexOf()的简单使用示例

    indexOf在js中有着重要的作用,可以判断一个元素是否在数组中存在,或者判断一个字符是否在字符串中存在,下面这篇文章主要给大家介绍了关于js中indexOf()简单使用的相关资料,需要的朋友可以参考下
    2023-01-01
  • 基于JavaScript实现树形下拉框

    基于JavaScript实现树形下拉框

    这篇文章主要为大家详细介绍了基于JavaScript实现树形下拉框的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • Javascript将数字转化成为货币格式字符串

    Javascript将数字转化成为货币格式字符串

    这篇文章主要介绍Javascript将数字转化成为货币格式字符串的方法,通俗易懂,需要的朋友可以参考下。
    2016-06-06

最新评论