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 textarea光标定位方法(兼容IE和FF)
Mar 12 Javascript
关于javascript function对象那些迷惑分析
Oct 24 Javascript
JQuery选择器特辑 详细小结
May 14 Javascript
JS实现Enter键跳转及控件获得焦点
Aug 12 Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
Sep 01 Javascript
使用jQuery实现更改默认alert框体
Apr 13 Javascript
小程序开发实战:实现九宫格界面的导航的代码实现
Jan 19 Javascript
基于javascript的异步编程实例详解
Apr 10 Javascript
详解Vue使用命令行搭建单页面应用
May 24 Javascript
vue递归组件实战之简单树形控件实例代码
Aug 27 Javascript
jQuery实现可编辑的表格
Dec 11 jQuery
关于对TypeScript泛型参数的默认值理解
Jul 15 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中批量删除Mysql中相同前缀的数据表的代码
2011/07/01 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
php数字每三位加逗号的功能函数
2015/10/22 PHP
纯php生成随机密码
2015/10/30 PHP
Zend Framework实现将session存储在memcache中的方法
2016/03/22 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
动态控制Table的js代码
2007/03/07 Javascript
JavaScript将Table导出到Excel实现思路及代码
2013/03/13 Javascript
自己编写的支持Ajax验证的JS表单验证插件
2015/05/15 Javascript
在JavaScript中操作时间之getUTCDate()方法的使用
2015/06/10 Javascript
纯JS前端实现分页代码
2016/06/21 Javascript
浅谈javascript中执行环境(作用域)与作用域链
2016/12/08 Javascript
ant-design-vue按需加载的坑的解决
2020/05/14 Javascript
使用vue3重构拼图游戏的实现示例
2021/01/25 Vue.js
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
详解C++编程中一元运算符的重载
2016/01/19 Python
python图片验证码生成代码
2016/07/02 Python
python实现简易通讯录修改版
2018/03/13 Python
基于python实现名片管理系统
2018/11/30 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】
2019/03/11 Python
Python中itertools的用法详解
2020/02/07 Python
ECOSUSI官网:女式皮革背包
2019/09/27 全球购物
领先的荷兰线上超市:荷兰之家Holland at Home(支持中文)
2021/01/21 全球购物
演讲比赛获奖感言
2014/02/02 职场文书
家长评语和期望
2014/02/10 职场文书
优秀部门获奖感言
2014/02/14 职场文书
2014年关于两会精神的心得体会
2014/03/17 职场文书
计算机专业自荐信
2014/05/24 职场文书
环境日宣传活动总结
2014/07/09 职场文书
社会学专业求职信
2014/07/17 职场文书
慈善捐赠倡议书
2014/08/30 职场文书
统计工作个人总结
2015/03/03 职场文书
2019新员工心得体会
2019/06/25 职场文书
Elasticsearch 数据类型及管理
2022/04/19 Python