javascript 闭包疑问

 更新时间:2010年12月30日 19:37:30   作者:  
今天在编码时,遇到一个问题,特记录下。希望对朋友有所帮助。
复制代码 代码如下:

var test=(function() { var arr2=[1,2,3,3]; return function(){ return arr2; }; })()
Array.prototype.f1= function () { return []; }
Array.prototype.f2= function () { this.length=0; return this; }   

然后用两种方式调用:
一:var arr= test();
console.log(arr.length);结果是4
arr.f1();
arr= test();
console.log(arr.length);结果是4
这个好理解;

二:var arr= test();
console.log(arr.length);结果是4
arr.f2();
arr= test();
console.log(arr.length);结果是0
不知道为什么会这样,难道arr.f2()可以修改test函数中闭包中的arr2;

相关文章

  • JS实现骰子3D旋转效果

    JS实现骰子3D旋转效果

    这篇文章主要为大家详细介绍了JS实现骰子3D旋转效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 详解axios跨端架构是如何实现的

    详解axios跨端架构是如何实现的

    我们都知道,axios 是是一个跨平台请求方案,在浏览器端采用 XMLHttpRequest API 进行封装,而在 Node.js 端则采用 http/https 模块进行封装,那么本文,我们将来探讨这个话题:axios 的跨端架构是如何实现的,需要的朋友可以参考下
    2024-04-04
  • 基于原生JS实现图片裁剪

    基于原生JS实现图片裁剪

    要进行图片编辑,最重要要能够对图片进行裁剪。主要的实现分成两部分,一部分是前端利用js进行裁剪区域选择,第二部分是利用PHP进行后台处理。现在就跟大家分享一下。
    2016-08-08
  • 代码详解JS操作剪贴板

    代码详解JS操作剪贴板

    本篇文章给大家介绍了如何用JS操作剪贴板的功能,并把实例代码做了分享,需要的朋友学习下吧。
    2018-02-02
  • js实现网页右上角滑出会自动消失大幅广告的方法

    js实现网页右上角滑出会自动消失大幅广告的方法

    这篇文章主要介绍了js实现网页右上角滑出会自动消失大幅广告的方法,是javascript广告特效的典型应用,非常具有实用价值,需要的朋友可以参考下
    2015-02-02
  • JavaScript canvas绘制渐变颜色的矩形

    JavaScript canvas绘制渐变颜色的矩形

    这篇文章主要为大家详细介绍了JavaScript canvas绘制渐变颜色的矩形,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • uniapp解决token值无法使用的问题

    uniapp解决token值无法使用的问题

    这篇文章主要给大家介绍了如何使用uniapp解决token值无法使用的问题,文中给大家详细介绍了产生原因和解决方案,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-10-10
  • javascript 按键事件(兼容各浏览器)

    javascript 按键事件(兼容各浏览器)

    本篇文章主要是对javascript中的按键事件进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12
  • javascript关于继承的用法汇总

    javascript关于继承的用法汇总

    这篇文章主要介绍了javascript关于继承的用法,实例汇总了常见的javascript关于继承的用法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • 微信小程序单选框自定义赋值

    微信小程序单选框自定义赋值

    这篇文章主要介绍了微信小程序单选框如何自定义赋值,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05

最新评论