当前位置: 首页 > news >正文

360网站做二维码做课展网站

360网站做二维码,做课展网站,中国软件开发公司排行,常州做网站多少钱概念作用保护作用保存作用优缺点命名空间 概念 闭包(closure)指有权访问另一个函数作用域中变量的函数 — Javacript高级程序设计 p309 简单理解,一个作用域可以访问另一个函数内部的私有变量 // 其中 test就是一个闭包 function fn(){var num 10function test …
  • 概念
  • 作用
  • 保护作用
  • 保存作用
  • 优缺点
  • 命名空间

概念

闭包(closure)指有权访问另一个函数作用域中变量的函数 — Javacript高级程序设计 p309
简单理解,一个作用域可以访问另一个函数内部的私有变量

// 其中 test就是一个闭包
function fn(){var num = 10function test () { console.log(num) }
}

作用

保护作用

在上下文中会有一些私有的变量AO(XXX),这些私有变量和外界的变量不会冲突(互不影响)

应用

  1. 团队协作开发中,为防止全局变量的冲突污染,建议每个开发者,把自己的代码放到一个闭包中(立即执行函数即可)保护起来
  2. 封装一个插件或类库等,防止自己定义的变量和方法与用户定义的冲突,需要把所写的代码放到一个闭包中,例如 Jquery

保存作用

某些情况下,上下文中的某些内容被为外界占用后,当前上下文并不会出栈销毁,这样开一把上下文中的一些信息存储起来

应用

1.在某些需求下,经常需要形成一个闭包,存储一些值(且不能销毁),供后面的程序运行使用,例如 惰性函数柯里化函数(bind)compose函数等

优缺点

优点:保护和保存代码不受污染
缺点:会产生不销毁的上下文,导致栈/堆内存消耗过大,也会导致内存泄露(该内存空间使用完毕之后未回收),影响页面的运行性能

命名空间

概念

给每个对象的堆内存起一个变量名,这个变量就是’命名空间’

作用

  1. 避免变量,函数名的冲突
var a = 1
var utils = { 方法... }
  1. 单例设计模式 (闭包)
    各板块暴露到全局只有一个变量,避免全局变量的污染,实现了闭包之间的方法公用性
var utils = (function(){var num = 10function test(){console.log(num)}//函数...return {test // 相当于 test:test// 方法...}
}())
utils.test()  // 直接用命名空间 utils 调用其中方法
  1. 基于 window.xxx = 方法 ,暴露到全局
    这种方法暴露到全局对象GO上,也可能导致方法之间的冲突
http://www.yayakq.cn/news/483665/

相关文章:

  • 腾讯企业网站建设手机无法登录wordpress
  • 网站图标怎么下载有哪些做短租的网站
  • 网站建设为什么必须有服务器网站seo招聘
  • 淘宝网站建设策划书青岛路桥建设集团有限公司网站
  • 大型网站都怎么做推广上海地区网站开发公司
  • 有没有做门面设计的网站品牌网站建设价位
  • 长春专用网站建设wordpress 数据库权限
  • 网站百度未收录商桥安装显示网站改版 请示
  • 九江网站设计公司余江网站建设
  • 域名没备案如何建设网站网站备案网站名称
  • 昆明网站建设推广字节跳动员工待遇
  • 厦门正规网站建设多少龙华营销型网站建设公司
  • 中国建设监理协会网站网站设计简单吗
  • 烟台网站建设开发网络与设计是干嘛的
  • 怎么查看一个网站的后台如何在图片上做网站水印图
  • 免费 个人 网站广州优秀网站建设
  • 规划网站站点需要遵循哪些原则wordpress 转换成帝国
  • 网站 动画 怎么做的深圳保障性住房有哪些
  • 襄阳营销型网站建设刷东西网站怎么做
  • 高端制作网站公司内蒙古城乡建设厅网站资质公告
  • 网站建设与管理课程的目标深圳企业网站哪家强
  • 哪个网站做系统国内永久免费云服务器推荐
  • 网站优化专家18600119496古代中国建筑网站
  • 长沙教育网站开发江苏建设教育网站
  • 怎么做批量的网站检查手机网站制作报价
  • 加强医院微信和网站建设乐至seo
  • wordpress 下载网站国家建设工程信息网
  • 住房和城乡建设部网站个人简介网页怎么做
  • 网站建设用户调查报告网站为什么做子域名
  • 十大品牌网站wordpress高级模板下载