简单理解JS闭包

JS中闭包是个很重要的概念,个人理解就是对函数调用者之间变量的访问控制的环境,本文将简单介绍一下什么是JS闭包。

function Person(){  var name='stt';  function sayName(){    console.log('name is=',name);  };  sayName();}var person=new Person();person();

登录后复制

sayname函数中的name是外部函数定义的局部变量,sayname能够直接访问该变量

优点:1.能够通过person()调用访问到Person函数内部的局部变量name

         2.声明的局部变量name会因为被sayName引用而不会随着Person函数的结束而被回收,会一直存在于内存中

缺点:频繁使用闭包,会使很多变量常驻内存,影响性能

相关推荐:

对js闭包的简单理解

JS闭包常见形式详解

JS闭包用法的示例代码分享

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

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

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

(0)
上一篇 2025年3月8日 17:38:28
下一篇 2025年3月8日 17:38:36

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

相关推荐

  • js编译和执行顺序详解

    Javascript是一段一段执行的,以script标签来分割,执行每一段之前,都有一个“预编译”, 预编译干的活有两:1.声明所有var变量(初始为undefined),2.解析定义式函数语句。  有个关于 “window作用域下,a =…

    编程技术 2025年3月8日
    200
  • Eclipse去除js文件验证错误解决办法

    本文主要是对eclipse去除js(javascript)验证错误进行了介绍。在eclipse中,js文件常常会报错。可以通过如下几个步骤解决: 第一步:去除eclipse的JS验证:将windows->preference->…

    编程技术 2025年3月8日
    200
  • Vue.js源码学习provide 和 inject

    在 vue.js 的 2.2.0+ 版本中添加加了 provide 和 inject 选项。他们成对出现,用于父级组件向下传递数据。  源码位置 和之前一样,初始化的方法都是在 Vue 的 _init 方法中的。   // src/core…

    编程技术 2025年3月8日
    200
  • js关于监听浏览器后退事件详解

    本文主要和大家分享js关于监听浏览器后退事件详解,希望本文的代码能帮助到大家。 直接上代码(可直接使用) $(document).ready(function (e) { var counter = 0; if (window.histor…

    编程技术 2025年3月8日
    200
  • js逻辑运算符短路简单操作

    js逻辑运算符有三个:逻辑非!、逻辑与&&、逻辑或||。所谓短路操作就是, 当&&的第一个操作数的值是false时,直接返回第一个操作数的值,不再对第二个操作数进行计算;    var bar1 = 0&am…

    编程技术 2025年3月8日
    200
  • js关于鼠标离开事件

    mouseout: 鼠标离开事件 mouseleave: 鼠标离开事件区别: 不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。mouseover:…

    编程技术 2025年3月8日
    200
  • 四种JS中this取值模式

    本文主要和大家分享JS中this取值的四种模式,希望能帮助到大家。 一、函数简介 在javascript中每一个函数的内部,除了声明时定义的形式参数外,每个函数还附加了两个参数:this 和 arguments。 参数arguments是一…

    编程技术 2025年3月8日
    200
  • js复制文本内容到剪切板实现代码

    本文主要和大家分享js复制文本内容到剪切板实现代码,希望能帮助到大家。 兼容主流浏览器 function copyUrl2() { var Url2=document.getElementById(“biao1”).innerText; v…

    编程技术 2025年3月8日
    200
  • 实例解析js原型和call()

    本文主要和大家分享js原型和call(),我们对js原型和call()做了一个小总结,希望能帮助到大家。 /*原型也是一个对象把共有的属性或者方法放在原型中*///Person.prototype 原型/*Person.prototype …

    编程技术 2025年3月8日
    200
  • js代码实现vue双向数据绑定实例

    双向数据绑定面试一般都会问到,首先要了解访问器属性用法,时间关系,先贴代码,有时间了分析一下 ,希望本文能帮助到大家。 Object.defineProperty(obj,propertyName,{                get:…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论