闭包小记录

本文通过一个JavaScript代码示例,深入解析了闭包的概念和变量作用域的特性。阐述了即使全局变量的值发生改变,也不会影响到已创建并返回的函数中变量的值。
var c = 4
var add = x => n => {x = n+x; return x}
var add1 = add(c)
console.log(add1(10)) // 14
c = 5
var d = add1(1)
console.log(d) // 15

和日常使用的变量申明在函数内为私有变量一样,全局变量也会构成闭包

在这里表现就是内部函数返回之后创建的新函数,和之前的变量(这里为参数c或者说x)的值就没有关系了,因为已经返回了函数和一个包含x的闭包赋值给了add1,所以后续的c的值改变不影响了

转载于:https://my.oschina.net/mdu/blog/2998337

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值