关于JS闭包的介绍

这篇文章主要介绍了关于关于js闭包的介绍,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

一、作用域

    var x = 0  //全局变量 x    var y = 10 //全局变量 y    var fun1 = function(){        var x = 1  //fun1函数局部变量 x        console.log(x++)        console.log(y)    }     fun1() //输出 1  10 函数内可以访问函数上级的变量    console.log(x) //输出0 函数外部不能调用函数内部的局部变量

登录后复制

二、闭包

    var x = 0  //全局变量 x    var fun1 = function(){        var x = 1  //fun1函数局部变量 x        function fun2() {            console.log(x++) //当x = 1时 x++ = x ; ++x = x+1        }        return fun2  //此时fun2就是一个闭包    }     var run1 = fun1()    run1() //输出 1     run1() //输出 2 run1是函数是引用类型,上一步运行run1将变量x改变进而影响这步的输出    var run2 = run1    run2() //输出 3  因为run2 = run1 run1和run2是函数属于引用类型 所以共用一个作用域链    run2() //输出 4    var run3 = fun1()    run3() //输出 1 这里不是5 run3有自己的作用域链    run3() //输出 2    console.log(x) //输出 0

登录后复制

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

 关于JS 继承的介绍

以上就是关于JS闭包的介绍的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2747091.html

(0)
上一篇 2025年3月8日 04:16:43
下一篇 2025年3月7日 19:25:59

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 对于js闭包进一步理解

    这篇文章给大家分享的内容是关于对js闭包进一步理解,内容很不错,有需要的朋友可以参考一下。 闭包这个概念  自我几个月前开始学习JS开始  我就一直困惑 之前也有所理解  但是后来长时间不用就给忘记了 闭包:通俗的讲  大多数人所接受的就是…

    编程技术 2025年3月8日
    200
  • js闭包是什么?对js闭包的理解(附代码)

    js中闭包closure,是指函数变量可以保存在函数作用域内,因此看起来是函数将变量“包裹”了起来,根据定义,包含变量的函数就是闭包。 本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。 最初的定义…

    2025年3月8日
    200
  • js闭包有什么用处?js闭包的用法实例(附代码)

    本篇文章给大家带来的内容是关于js闭包有什么用处?js闭包的用法实例(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 js语言在函数内部可以直接读取全局变量,但函数外部无法读取函数内的局部变量 var n=100;…

    编程技术 2025年3月8日
    200
  • js闭包中this指向的解决方法(代码)

    本篇文章给大家带来的内容是关于js闭包中this指向的解决方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 下面是一个问题,对象方法中定义的子函数,子函数执行时this指向哪里?  三个问题:      (1)以…

    编程技术 2025年3月8日
    200
  • js中闭包性能优化的代码解析

    本篇文章给大家带来的内容是关于js中闭包性能优化的代码解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。     window.onload=function () {        var btn=document.ge…

    编程技术 2025年3月8日
    200
  • js闭包是什么?对js闭包的理解

    js中的闭包是什么?对于初次接触到闭包这个概念的朋友们,我相信很多的朋友都会有点不太理解,接下来的这篇文章将给大家来说一说js闭包该如何理解。 闭包(closure)是js中的一个难点,也是它的特色,很多高级应用都要依靠闭包来实现。所以我们…

    编程技术 2025年3月8日
    200
  • js闭包与作用域链是什么意思?js闭包与作用域链详解

    在学习js过程中会,必定要知道和明白的闭包。闭包是与其他编程语言相比,是js中所特有的一个。以下就是我对于闭包的认识。 闭包的产生:通俗的说,闭包产生于多个函数嵌套之间,当内层函数被保存到外面时,闭包就会产生。【推荐阅读:JavaScrip…

    2025年3月8日 编程技术
    200

发表回复

登录后才能评论