js闭包简介

1.简介

首先要了解js 内部作用域是可以获取外部作用域的变量,反之就不行。
闭包就是用来实现外部作用域引用内部作用域的变量;

2.实现

而闭包则通过js的特性:将一个函数作为一个返回值 来实现闭包,返回的函数中引用了内部作用域的变量,从而将这个内部作用域的变量暴露在外部作用域。

function demo() {
	let a = 1;
	return function() {
		return a;
	}
}
 var func = demo();// func = function() { return a; }
 var b = func()//1   b = a = 1

还有一种直接函数赋值来实现闭包

var fn2;
function fn(){
    var name="hello";
    //将函数赋值给fn2
    fn2 = function() {
        return name;
    }
}
fn()//要先执行进行赋值,
fn2()//执行输出: hello

3.闭包的使用场景

js闭包的9个使用场景

4.闭包的优缺点

4.1 优点

  1. 变量长期驻扎在内存中;
  2. 避免全局变量的污染;
  3. 私有成员的存在 ;

4.2 缺点

被引用的内部作用域的变量不会释放掉,使用不当很容易造成内存泄露。引用变量用完后设置null。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
春林文件批量改名系统(含MP3批量更名)绿色版 《春林文件批量改名系统》是一款功能强大集中了常用批量更名文件的优点的文件更名工具,可以把所有的文件快速方便的重命名;支持所有序号格式;支持更改文件扩展名,支持指定文件名的基本名称和扩展名,支持改名预览;支持按照mp3标签批量重命名文件,能去掉文件名中的数字、字母或其他指定字符,支持象acdsee那样按照指定模式重命名文件如自动添加序号,保留原文件名等功能; 可以直接根据文本中的文件名创建文件夹 免费版不提供高级模板的定制、子文件夹改名,文件预览、文件复制改名等功能。 如果买5个以标准版,可根据用户需要定制功能。定制前请与作者联系。购买地址:http://shareware.skycn.com/soft/6743.htm 1 免安装,解压就可以直接使用 2 去掉文件名中的数字、字母或其他指定字符 3 支持模糊匹配和正则表达式 4 自动利用mp3标签改写文件名 5 修改mp3标签,添加艺术家、标题、注释等信息。 6 按照指定模式重命名文件 如自动添加序号 保留原文件名 7 修改文件扩展名 8 MP3批量更名:是根据MP3文件的ID3v1(tag信息)来对网上下载的乱七八糟MP3文件名进行批量改名,操作十分简便. 9 支持所有序号格式 如模式为 ###-### 则对应的文件名为 001-001 002-002,如果模式为001-###,则对应的文件名为001-001,001-002,001-003.... 10 支持全选 多选 连选 11 利用文本文件中的文字替换文件名。特别适合CD光盘提取的文件。 12 直接根据文本中的文件名创建文件夹 13 提取目录下的所有文件的文件名,并对文件名进行编辑,比如添加序号、删除指定位置的字符等。 14 提取目录下的所有文件夹的文件名,并对文件夹名进行编辑。 15 自动生成指定目录下的文件或文件夹名的文本文件。 文件批量更名操作步骤: 1 打开需要更名的文件夹 2 选择需要更名的文件类型 3 选择需要更名的文件,ctrl+A 全选 ctrl+单击 多选 shift+单击 连选 4 设置命名模式 \: ### 序号模式,#的个 数表示序号的位数,不足位数用0补齐,如001 002 ...999; 5 重命名预览 6 重命名。 mp3标签批量更名操作步骤: 1 打开需要更名的文件夹 2 执行菜单命令 mp3\用mp3标签重命名 格式 标题+艺术家+序号 3 预览 4 重命名。 mp3标签批量更名操作步骤: 1 打开需要更名的文件夹 2 选择mp3文件,如果选中了非mp3文件,程序将自动跳过 3 设置批量命名模式 4 预览 5 重命名。 模式说明: ## 序号 ,位数不够用0补齐,最多6位 @ mp3唱片标题 $ mp3艺术家 : / 例: 模式 ##_@_$ 文件名改成 01_牵手_苏芮... 根据文本文件命名操作说明: 1 先将新的在左边的文本框中录入,一行一个文件名,不包括扩展名,不要有空行 2 然后选择需要批量改名的文件,单击预览,就可以看到文件已经改成了指定文本框中的文件名了。 提取文件名称写入到文本文件 1 打开需要更名的文件夹 2 选择需要更名的文件类型 3 选择需要更名的文件,ctrl+A 全选 ctrl+单击 多选 shift+单击 连选 4 执行提取文件基本名 5 执行将文件名保存为文本文件 创建文件夹 直接根据文本中的文件名创建
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值