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 相关文章推荐
json原理分析及实例介绍
Nov 29 Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 Javascript
jquery进行数组遍历如何跳出当前的each循环
Jun 05 Javascript
Javascript学习笔记之函数篇(五) : 构造函数
Nov 23 Javascript
node.js中使用socket.io制作命名空间
Dec 15 Javascript
关于JavaScript中的this指向问题总结篇
Jul 23 Javascript
js实现图片粘贴上传到服务器并展示的实例
Nov 08 Javascript
bootstrap select2插件用ajax来获取和显示数据的实例
Aug 09 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
Dec 03 Javascript
Vue+Element UI+Lumen实现通用表格分页功能
Feb 02 Javascript
利用Dectorator分模块存储Vuex状态的实现
Feb 05 Javascript
微信小程序使用蓝牙小插件
Sep 23 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 strtotime函数详解
2009/12/18 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
thinkPHP+LayUI 流加载实现功能
2019/09/27 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
JavaScript版DateAdd和DateDiff函数代码
2012/03/01 Javascript
jQuery文本框(input textare)事件绑定方法教程
2013/04/24 Javascript
javascript中的变量作用域以及变量提升详细介绍
2013/10/24 Javascript
js,jquery滚动/跳转页面到指定位置的实现思路
2014/06/03 Javascript
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
JS实现的对象去重功能示例
2019/06/04 Javascript
Vue中的循环及修改差值表达式的方法
2019/08/29 Javascript
微信小程序自定义tabBar在uni-app的适配详解
2019/09/30 Javascript
通过实例了解JS执行上下文运行原理
2020/06/17 Javascript
vue实现列表滚动的过渡动画
2020/06/29 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
python使用cookie库操保存cookie详解
2014/03/03 Python
简单瞅瞅Python vars()内置函数的实现
2019/09/27 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
美国高级音响品牌:Master&Dynamic
2018/07/05 全球购物
师范生实习自我鉴定
2013/11/01 职场文书
家长会演讲稿范文
2014/01/10 职场文书
活动总结报告范文
2014/05/04 职场文书
中文专业自荐书
2014/06/29 职场文书
材料化学专业求职信
2014/07/15 职场文书
党的群众路线批评与自我批评范文
2014/10/16 职场文书
质量保证书格式
2015/02/27 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
《绝招》教学反思
2016/02/20 职场文书
MySQL之PXC集群搭建的方法步骤
2021/05/25 MySQL
Mysql基础知识点汇总
2021/05/26 MySQL
R9700摩机记
2022/04/05 无线电