
什么是es6闭包吗,es6闭包语法怎么运用,下面web建站小编给大家简单介绍一下!
什么是es6闭包吗
在es6中,闭包(closure)指有权访问另一个函数作用域中变量的函数。简单理解:一个作用域可以访问另外一个函数内部的局部变量。
闭包:在一个函数内部创建另一个函数,把内嵌的函数称为闭包,它可以访问外部函数的局部变量
闭包的主要作用:延伸了变量的作用范围。
es6闭包语法介绍
通过闭包实现迭代
let arr = ['vue','jquery','css3']
function fn(temp){ //外部函数的返回值是闭包
let i = 0
//定义闭包:迭代获取数组元素并返回
return function(){
return temp[i++] || '数组已经遍历结束'
}
}
let f1 = fn(arr)
console.log(f1()) //vue
console.log(f1()) //jquery
console.log(f1()) //css3
console.log(f1()) //数组已经遍历结束
将闭包封装到对象中
function fun(){
let name = 'web建站'
setName = function(na){ //setName是闭包,用来设置外部函数的变量值
name = na
}
getName = function(){ //getName是闭包,用来返回外部函数的变量值
return name
}
//外部fun函数的返回值,将闭包封装到对象中返回
return {
setUserName:setName,
getUserName:getName
}
}
let obj =fun() //将fun函数返回值(对象)赋给obj
console.log('用户名:',obj.getUserName()) //web建站
obj.setUserName('学习vue')
console.log('用户名:',obj.getUserName()) //学习vue
上面是“什么是es6闭包吗(es6闭包语法介绍)”的全面内容,想了解更多关于 js 内容,请继续关注web建站教程。
当前网址:https://m.ipkd.cn/webs_2822.html
声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

网站标签优化的要点是什么?
一款无需编程基础的可视化游戏制作工具——GameCreator(红狼游戏网)
如何防御DDOS攻击?