出现“不能执行已释放的Script代码”错误的原因及解决办法

 更新时间:2007年08月29日 19:23:42   作者:  
很多web开发者或许都遇到过这样的问题,程序莫名奇怪出现“不能执行已释放Script的代码”,错误行1,列1.对于这种消息描述不着边,行列描述更是乱写的js错误,相信是所有调试js程序的朋友们最郁闷也最憎恨的事情!遇到这种问题,最简单的办法直接把错误贴到baidu或google那个小输入框中让他们先给点指点,再去解决,可这次却没有这么容易,在baidu搜索似乎很多人都遇到过这种问题,但是都是些什么qq空间错误,狂晕,或者就是只有问没有答的,闷!

   这种错误从何调起?后面没办法,又是猜测又是try...catch蹦错误,找了半天终于找到错误的位置,可是发现写的并没有什么问题,后来绞尽脑汁思考程序的解释过程,确依旧没有什么头绪。继续baidu,突然在某网页中看到一句话:当一个页面关闭时会自动释放页面的js。短短一句话给了我不小的启发。检查我的程序是否有页面的关闭或转向,发现是执行了转向,然后再回到这个页面时出现了错误。突然间觉得明白了。

场景:页面有a和b两个框架页iframe,在b页面中通过js将一个函数引用传入到a页面保存在a页面的一个变量中,a页面可以通过这个引用执行b页面的一些程序,当b页面刷新后由于a页面对b页面的引用已经丢失,但a中仍然保存着b页面之前传过来的引用,但当前的引用已经不能引用到b页面,这样在执行时就会出现“不能执行已经释放的Script代码”

解决办法:在a页面中加上容错处理,当引用出现错误时要将引用清空或指向一个默认的函数。另外在b页面再次载入时要重新给a页面传送函数引用,这样就不会出现这样的错误了。

或许这里的描述有些过于抽象了,看一个演示再看看代码就容易明白了,先test,然后return url,之后再test就会出现这个问题了

相关文章

  • TypeScript泛型工作原理详解

    TypeScript泛型工作原理详解

    TypeScript 凭借其强大的类型系统,提供了一项称为泛型的功能,它使开发人员能够编写可重用和类型安全的代码,泛型允许您创建可以处理多种类型(而不是单个类型)的组件,本文深入探讨了 TypeScript 泛型,提供了详尽的解释和代码示例来说明它们的用法和好处
    2024-02-02
  • JS Range HTML文档/文字内容选中、库及应用介绍

    JS Range HTML文档/文字内容选中、库及应用介绍

    本文的内容基本上是基于“区域范围对象(Range objects)”这个概念来说的
    2011-05-05
  • JS浮点数运算结果不精确的Bug解决

    JS浮点数运算结果不精确的Bug解决

    这篇文章主要给大家介绍了关于JS浮点数运算结果不精确的Bug解决,文中通过示例代码介绍的非常详细,对大家学习或者使用JS具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-08-08
  • JS实现用特殊符号替换字符串的中间部分区域的实例代码

    JS实现用特殊符号替换字符串的中间部分区域的实例代码

    相信很多人都遇到过敏感信息需要做部分隐藏功能,大多数都是用特殊符号去替换。今天小编给大家带来了JS实现用特殊符号替换字符串的中间部分区域的实例代码,需要的朋友参考下吧
    2018-07-07
  • js中url对象化管理分析

    js中url对象化管理分析

    这篇文章主要介绍了js中url对象化管理的相关知识以及用法介绍,有需要的朋友跟着小编一起学习下。
    2017-12-12
  • js实时获取窗口大小变化的实例代码

    js实时获取窗口大小变化的实例代码

    下面小编就为大家带来一篇js实时获取窗口大小变化的实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • 小程序实现选择题选择效果

    小程序实现选择题选择效果

    这篇文章主要为大家详细介绍了小程序实现选择题选择效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • JavaScript捕捉事件和阻止冒泡事件实例分析

    JavaScript捕捉事件和阻止冒泡事件实例分析

    这篇文章主要介绍了JavaScript捕捉事件和阻止冒泡事件,结合实例形式分析了冒泡的原理及javascript阻止冒泡的相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • 20个实用的JavaScript技巧分享

    20个实用的JavaScript技巧分享

    这篇文章主要介绍了20个实用的JavaScript技巧分享,本文讲解的都是开发中总结出的编码技巧、和最佳实践,需要的朋友可以参考下
    2014-11-11
  • 谈谈impress.js初步理解

    谈谈impress.js初步理解

    impress.js 是国外一位开发者受 Prezi 启发,采用 CSS3 与 JavaScript 语言完成的一个可供开发者使用的表现层框架(演示工具)。感兴趣的朋友跟着小编一起学习吧
    2015-09-09

最新评论