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 相关文章推荐
什么是JavaScript
Aug 13 Javascript
JavaScript 对象成员的可见性说明
Oct 16 Javascript
Extjs学习笔记之七 布局
Jan 08 Javascript
jQuery封装的屏幕居中提示信息代码
Jun 08 Javascript
Vuejs第十一篇组件之slot内容分发实例详解
Sep 09 Javascript
详解jQuery uploadify文件上传插件的使用方法
Dec 16 Javascript
VueRouter导航守卫用法详解
Dec 25 Javascript
vue+element-ui动态生成多级表头的方法
Aug 28 Javascript
在vue中使用setInterval的方法示例
Apr 16 Javascript
javascript开发实现贪吃蛇游戏
Jul 31 Javascript
聊聊vue 中的v-on参数问题
Jan 29 Vue.js
vue3.0 数字翻牌组件的使用方法详解
Apr 20 Vue.js
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
总集篇&特番节目先行播出!《SAO Alicization War of Underworld》第2季度TV动画4月25日放送!
2020/03/06 日漫
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
PHP中iconv函数转码时截断字符问题的解决方法
2015/01/21 PHP
详解PHP素材图片上传、下载功能
2019/04/12 PHP
图片img的src不变让浏览器重新加载实现方法
2013/03/29 Javascript
js中小数转换整数的方法
2014/01/26 Javascript
Jquery中$.post和$.ajax的用法小结
2015/04/28 Javascript
JavaScript实现表格点击排序的方法
2015/05/11 Javascript
js调出上下文菜单的实例
2015/12/17 Javascript
概述jQuery的元素筛选
2016/11/23 Javascript
Bootstrap栅格系统学习笔记
2016/11/25 Javascript
JavaScript实现审核流程状态的动态显示进度条
2017/03/15 Javascript
微信小程序 页面跳转传值实现代码
2017/07/27 Javascript
JS获取子、父、兄节点方法小结
2017/08/14 Javascript
微信页面弹出键盘后iframe内容变空白的解决方案
2017/09/20 Javascript
前端必备插件之纯原生JS的瀑布流插件Macy.js
2017/11/22 Javascript
微信小程序支付及退款流程详解
2017/11/30 Javascript
JavaScript时间戳与时间日期间相互转换
2017/12/11 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
python之import机制详解
2014/07/03 Python
Python使用matplotlib绘制动画的方法
2015/05/20 Python
Python转换时间的图文方法
2019/07/01 Python
keras的load_model实现加载含有参数的自定义模型
2020/06/22 Python
关于python中导入文件到list的问题
2020/10/31 Python
python Xpath语法的使用
2020/11/26 Python
CSS3教程:background-clip和background-origin
2008/10/17 HTML / CSS
花园仓库建筑:Garden Buildings Direct
2018/02/16 全球购物
国际旅客访问北美最大的汽车租赁提供商:Alamo Rent A Car
2018/06/13 全球购物
如何填写个人简历自我评价
2013/12/10 职场文书
大学生军训感想
2014/02/16 职场文书
公司贷款承诺书
2014/05/30 职场文书
法人代表证明书格式
2014/10/01 职场文书
2014年客服工作总结范文
2014/11/13 职场文书
文明倡议书
2015/01/19 职场文书
会议主持人开场白台词
2015/05/28 职场文书