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 5 新增 Array 方法实现介绍
Feb 06 Javascript
SeaJS入门教程系列之完整示例(三)
Mar 03 Javascript
Ajax局部更新导致JS事件重复触发问题的解决方法
Oct 14 Javascript
jquery对复选框(checkbox)的操作汇总
Jan 13 Javascript
浅析jQuery 3.0中的Data
Jun 14 Javascript
微信小程序 设置启动页面的两种方法
Mar 09 Javascript
MUI顶部选项卡的用法(tab-top-webview-main)详解
Oct 08 Javascript
Vue.js组件通信的几种姿势
Oct 23 Javascript
JavaScript模板引擎应用场景及实现原理详解
Dec 14 Javascript
微信小程序实现form表单本地储存数据
Jun 27 Javascript
微信小程序实现录音功能
Nov 22 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
Feb 16 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
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
缅甸的咖啡简史
2021/03/04 咖啡文化
Warning: session_destroy() : Trying to destroy uninitialized sessionq错误
2011/06/16 PHP
php引用传值实例详解学习
2013/11/06 PHP
thinkphp备份数据库的方法分享
2015/01/04 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
Yii遍历行下每列数据的方法
2016/10/17 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
点图片上一页下一页翻页效果
2008/07/09 Javascript
jQuery 技巧小结
2010/04/02 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
2015/05/14 Javascript
JavaScript声明变量名的语法规则
2015/07/10 Javascript
JavaScript中利用jQuery绑定事件的几种方式小结
2016/03/06 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
vue.js开发环境安装教程
2017/03/17 Javascript
nodejs和C语言插入mysql数据库乱码问题的解决方法
2017/04/14 NodeJs
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
angularjs的单选框+ng-repeat的实现方法
2018/09/12 Javascript
在vue项目中引用Iview的方法
2018/09/14 Javascript
ES6 迭代器与可迭代对象的实现
2019/02/11 Javascript
JS实现的字符串数组去重功能小结
2019/06/17 Javascript
vue 设置 input 为不可以编辑的实现方法
2019/09/19 Javascript
CountUp.js数字滚动插件使用方法详解
2019/10/17 Javascript
js实现图片实时时钟
2020/01/15 Javascript
Vue过渡效果之CSS过渡详解(结合transition,animation,animate.css)
2020/02/05 Javascript
python网络编程学习笔记(二):socket建立网络客户端
2014/06/09 Python
python实现屏保计时器的示例代码
2018/08/08 Python
django fernet fields字段加密实践详解
2019/08/12 Python
pytorch-RNN进行回归曲线预测方式
2020/01/14 Python
Python随机数函数代码实例解析
2020/02/09 Python
台湾家适得:Homeget
2019/02/11 全球购物
微型企业创业投资计划书
2014/01/10 职场文书
开工庆典邀请函范文
2014/01/16 职场文书
《雕塑之美》教学反思
2014/04/24 职场文书