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

做分享衣服网站的初衷是什么意思合肥网站建设与设计

做分享衣服网站的初衷是什么意思,合肥网站建设与设计,免费广告,网站空间集装箱作用域 一般认为 JS 中作用域有三种#xff1a; 全局作用域#xff1a;一个脚本运行代码的默认作用域#xff1b;模块作用域#xff1a;一个模块运行代码的默认作用域#xff1b;函数作用域#xff1a;一个函数运行代码的默认作用域。 而由于 let/const 声明变量的作用…作用域 一般认为 JS 中作用域有三种 全局作用域一个脚本运行代码的默认作用域模块作用域一个模块运行代码的默认作用域函数作用域一个函数运行代码的默认作用域。 而由于 let/const 声明变量的作用域是比函数作用域更加具有块级属性的所以称块级作用域任何一个 {} 包围的代码都是一个块函数是特殊的块脚本是一个大的块模块是多个脚本的集合是更大的块。 函数是特殊的块这是由于函数体内就算是 var 声明的变量在外部也无法使用这和其他 {} 构成的块不同。换句话说var 只承认函数的块级作用域。 /* let/const 声明变量的作用域 */ { let a 1; } console.log(a) // 报错块内的变量在外部失效报未定义的错{ let a 1 } { console.log(a) } // 报错此块内没有变量afor (let i 0; i 5; i) { } console.log(i) // 报错块内的变量在外部失效报未定义的错for (var i 0; i 5; i) { } console.log(i) // 5 var 只承认函数的块级作用域闭包 闭包是 JS 中最强大的特性之一。尽管功能强大但除了完成特定任务时才会函数嵌套。 概念 JS 允许函数嵌套且根据 块/函数 的作用域特性内部可以访问外部声明定义的变量将外部函数声明的变量等组成的环境和一个内部函数组合封装起来就构成一个闭包。 在下面一个简单的计数器例子中内部函数 counter 和变量 n/init 组成的环境构成闭包。 注意返回的函数不能是 new Function 构造出来的Function 的传参模式是字符串指向全局环境无法访问外部函数环境。 function MakeCounter(init0) {let val init;function counter() { return val; }return counter }let ctr MakeCounter(10) ctr() // 10 ctr() // 11 ctr() // 12模拟私有方法 由于闭包环境变量的私有性容易想到用来模拟一些私有方法。 下面一个相对复杂的计数器例子中私有属性 privateVal 只能通过公共方法 getValue 进行访问私有方法 changeBy 也只能通过其他公共方法调用。 function MakeCounter(init) {let privateVal init;function changeBy(delta) { privateVal delta; };return {getValue() { return privateVal; },increment() { changeBy(1); },decrement() { changeBy(-1); },plus(b) { changeBy(b); },minus(b) { changeBy(-b); },} }let ctr MakeCounter(10); ctr.value() // 10 ctr.increment() ctr.plus(9) ctr.value() // 20多个闭包共用一个环境? 将上面计数器的例子小改一下在返回的对象里增加一个值。 返回时一个对象包括一个值和五个函数 五个函数共用一个环境影响同一个环境值 val在完成返回后脱离该环境独立成为一个变量/属性。 function MakeCounter(init) {let privateVal init;function changeBy(delta) { privateVal delta; };return {val: PrivateVal,getValue() { return privateVal; },increment() { changeBy(1); },decrement() { changeBy(-1); },plus(b) { changeBy(b); },minus(b) { changeBy(-b); },} }let ctr MakeCounter(10); ctr.getValue() // 10 ctr.val // 10 ctr.increment() ctr.plus(9) ctr.getValue() // 20 ctr.val // 10 ctr.val 100 ctr.val // 100性能考量 闭包在处理速度和内存消耗方面对脚本性能具有负面影响闭包特性能达到的效果使用高级语法也能实现高手总是会闭包。
http://www.w-s-a.com/news/737053/

相关文章:

  • 建网站的地址十堰做网站
  • 怎么评判一个网站做的好与坏专做情侣装网站
  • 网站管理助手v3历史上的今天 网站如何做
  • 网站建设与管理的就业方向网站开发前端模板
  • 对网站建设的维护深圳网络推广推荐
  • wordpress多站共享授权码wordpress数据库缓存插件
  • 建一个购物网站多少钱上海商标注册
  • 琪觅公司网站开发面点培训学校哪里有
  • 北京建设工程信息网站江苏企业网站建设
  • php电子商务网站建设wordpress新建的页面如何加xml
  • 去百度建网站外贸业务推广
  • 百度seo 站长工具网络营销课程个人总结3000字
  • 设计品牌网站wordpress商城 中文站
  • 公司网站要备案吗百度售后电话人工服务
  • 北京移动网站建设制作一个购物网站
  • 网站优化排名如何做网络开发工程师
  • 域名已有服务器也有怎么做网站pc 手机网站 微站
  • 鞍山网站设计制作网站最好的外贸网站建设
  • 百度手机模板网站新变更营业执照注册号查了发现之前有备案过网站了
  • 群晖个人网站建设建设网站主机免费版
  • 下载好了网站模板怎么开始做网站阿克苏网站建设价格
  • 有谁做彩票网站学会了vue 能搭建一个网站平台
  • 描述对于营销型网站建设很重要飘红效果更佳教育培训排行榜前十名
  • 国外网站有哪些推荐的网站按关键词显示广告图片
  • 互联网招聘网站排名手机网站系统
  • 网站与云平台区别企业网站建设有什么要求
  • wordpress福利网站源码高端网站设计培训机构
  • 网站建设找客户招标网免费
  • 东莞食品网站建设扬州市住房建设局网站
  • 网站色彩心理建设网站的主要功能有哪些