首页 > 其他分享 >前端

前端

时间:2022-10-10 11:25:44浏览次数:45  
标签:count 闭包 函数 前端 result fun fn

JS

闭包

  • 闭包的应用:

    • 实现数据的私有
  • 内存泄漏

    • 内存泄漏指任何对象在您不再拥有或需要它之后仍然存在
  • 闭包=内层函数+引用的外层函数变量

    const outer=()=>{
         const a = 1
         const f=()=>{
            console.log(a)
         }
         f()
    }
    outer()
    通常会再使用一个函数包裹住闭包结构,以起到对变量保护作用
    
  • 外部如果想要使用闭包的变量,则需要return

    
    function count(){
        let i = 0
        function fn(){
            i++
            console.log(`'函数被调用了${i}次'`)
        }
        return fn
    }
    const fun = count()
    fun()
    i=100 //从外部修改i无法修改,因为i是函数私有的
    
  • 内存泄漏

    以下代码谁存在内存泄漏?count变量

    • result是一个全局变量,代码执行完毕不会立即销毁
    • result使用fn函数
    • fn用到fun函数
    • fun函数里面用到count
    • count被引用就不会被回收,所以一直存在

    此时,闭包引起内存泄漏

    function fn(){
        let count = 0
        function fun(){
            count++
            console.log(`'函数被调用了${count}次'`)
        }
        return fun
    }
    const result = fn()
    result()
    result()
    result()
    

forEach 和 map

标签:count,闭包,函数,前端,result,fun,fn
From: https://www.cnblogs.com/HaruhiSuzumiya/p/16774966.html

相关文章

  • vue前端
       代码//在body标签中<divid="app">{{message}}</div>varapp=newVue({el:'#app',data:{message:'HelloVue!'}}) ......
  • #yyds干货盘点#前端架构API层的封装
    上午好,今天为大家分享下个人对于前端​​API​​​层架构的一点经验和看法。架构设计是一条永远走不完的路,没有最好,只有更好。这个道理适用于软件设计的各个场景,前端​​API......
  • JS模块化—CJS&AMD&CMD&ES6-前端面试知识点查漏补缺
    本文从以时间为轴从以下几个方面进行总结JS模块化。从无模块化=>IIFE=>CJS=>AMD=>CMD=>ES6=>webpack这几个阶段进行分析。历史幼年期:无模块化方式需要......
  • 【前端必会】适合首页的滚动过渡(CSS transition)
    背景经常看到一些首页的过渡效果不错,闲来无事,实现个基本效果直接上代码<body><divid="1"class="blockbuild-in-scale-up"><h1>Hello1</h1></div><divid="2"c......
  • 【yishaadmin】yisha前端优化(持续更新)
    1、单页面字典调用问题处理yisha-data.js中修改,注意如果想要无权限也可以查看界面,当前请求接口权限标识去除,注意也把字典信息查询接口权限标识去除。functiongetDat......
  • Date前端日期变为年龄处理方法
    现在页面展示效果为: 1,首先编写一个过滤器用来处理想要处理的数据 2,将要处理的数据绑定到过滤器上3,过滤器中:输入该代码即可完成效果(重点)filters:{showAge(value){......
  • 前端使用json-server快速搭建服务
    一、json-server概述​ 一个在前端本地运行,可以存储json数据的server。​ 通俗来说,就是模拟服务端接口数据,一般用在前后端分离后,前端人员可以不依赖API开发,而在本地搭建......
  • #yyds干货盘点# 前端歌谣的刷题之路-第一百零九题-双向数据绑定
    前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从......
  • vue 前端导出PDF文件
    原理:通过对页面的截图进行生成PDF文件。PS:这里的截图指的是系统对页面的截图,不是你手动的截图,这里的截图进行可以长截图并且生成对应页数的PDF页码。  首先用npm引入......
  • 微信公众号开发,前端通过js获取微信授权的sha1加密
    //SHA1加密functionencodeUTF8(s){vari,r=[],c,x;for(i=0;i<s.length;i++)if((c=s.charCodeAt(i))<0x80)r.push(c);elseif(c<......