JS实现闭包中的沙箱模式示例


Posted in Javascript onSeptember 07, 2017

本文实例讲述了JS实现闭包中的沙箱模式。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
</body>
<script>
  //闭包实现模块化:沙箱模式   -->设计模式中的模块模式
  //模块化:就是一个能够实现完整功能的独立体(不能被外界污染)
  //一般来说,在开发中会将面向对象和模块化进行混合使用
  //--->使用技巧:把一个功能当成模块,在模块下面使用面向对象来实现
  var Person=(function(){
    //fn是一个局部函数,用户不可以随意修改
    function fn(){
      console.log("fn")
    }
    function Person(){
    }
    Person.prototype={
      constructor:Person,
      s1:function(){
        fn();
      },
      s2:function(){
      }
    }
    return Person;//Person是一个函数,可以访问到这一次执行环境中产生的fn Person的内存地址
    //由于是一个自执行函数,外层函数只会执行一次,导致了Person是唯一的
  })()
  var p1=new Person();
  var p2=new Person();
  //delete Person.prototype.s1;
</script>
</html>

更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

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

Javascript 相关文章推荐
一个cssQuery对象 javascript脚本实现代码
Jul 21 Javascript
window.dialogArguments 使用说明
Apr 11 Javascript
jquery选择器的选择使用及性能介绍
Jan 16 Javascript
JS获取当前日期和时间的简单实例
Nov 19 Javascript
微信公众号 摇一摇周边功能开发
Dec 08 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
May 26 Javascript
ionic2懒加载配置详解
Sep 01 Javascript
react 实现页面代码分割、按需加载的方法
Apr 03 Javascript
JSONP原理及应用实例详解
Sep 13 Javascript
10种JavaScript最常见的错误(小结)
Jun 21 Javascript
使用layui定义一个模块并使用的例子
Sep 14 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
Sep 08 Javascript
react-native使用react-navigation进行页面跳转导航的示例
Sep 07 #Javascript
详解vue-cli构建项目反向代理配置
Sep 07 #Javascript
vue数字类型过滤器的示例代码
Sep 07 #Javascript
vue监听scroll的坑的解决方法
Sep 07 #Javascript
react高阶组件经典应用之权限控制详解
Sep 07 #Javascript
React + webpack 环境配置的方法步骤
Sep 07 #Javascript
微信小程序之页面拦截器的示例代码
Sep 07 #Javascript
You might like
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
mac下Apache + MySql + PHP搭建网站开发环境
2014/06/02 PHP
PHP CURL 多线程操作代码实例
2015/05/13 PHP
php实现文件管理与基础功能操作
2017/03/21 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
阻止JavaScript事件冒泡传递(cancelBubble 、stopPropagation)
2007/05/08 Javascript
JavaScript asp.net 获取当前超链接中的文本
2009/04/14 Javascript
JQuery 表单中textarea字数限制实现代码
2009/12/07 Javascript
javascript基础知识大集锦(二) 推荐收藏
2011/01/13 Javascript
jquery查找父元素、子元素(个人经验总结)
2014/04/09 Javascript
jQuery修改class属性和CSS样式整理
2015/01/30 Javascript
js实现鼠标滚轮控制图片缩放效果的方法
2015/02/20 Javascript
JavaScript实现点击单元格改变背景色的方法
2016/02/12 Javascript
JS实现的简易拖放效果示例
2016/12/29 Javascript
Webpack常见静态资源处理-模块加载器(Loaders)+ExtractTextPlugin插件
2017/06/29 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
2017/09/02 Javascript
vue渲染时闪烁{{}}的问题及解决方法
2018/03/28 Javascript
JS+html5实现异步上传图片显示上传文件进度条功能示例
2019/11/09 Javascript
python基于mysql实现的简单队列以及跨进程锁实例详解
2014/07/07 Python
Python深入学习之特殊方法与多范式
2014/08/31 Python
Python进程通信之匿名管道实例讲解
2015/04/11 Python
python获取一组数据里最大值max函数用法实例
2015/05/26 Python
Python获取Redis所有Key以及内容的方法
2019/02/19 Python
Python urllib2运行过程原理解析
2020/06/04 Python
快速解决pymongo操作mongodb的时区问题
2020/12/05 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
香港草莓网土耳其网站:Strawberrynet TR
2017/03/02 全球购物
心理健康教育心得体会
2013/12/29 职场文书
服务之星获奖感言
2014/01/21 职场文书
2015年元旦演讲稿
2014/09/12 职场文书
2014光棍节大学生联谊活动方案
2014/10/10 职场文书
2015人事行政工作总结范文
2015/05/21 职场文书
毕业实习单位意见
2015/06/04 职场文书
导游词之宁夏贺兰山岩画
2019/11/08 职场文书
Python几种酷炫的进度条的方式
2022/04/11 Python
Python 避免字典和元组的多重嵌套问题
2022/07/15 Python