转载:http://blog.csdn.net/hingwu/archive/2007/04/29/1591624.aspx
Error:too much recursion
收藏
<script type="text/javascript"><!--
document.body.oncopy = function () {
if (window.clipboardData) {
setTimeout(function () {
var text = clipboardData.getData("text");
if (text && text.length > 300) {
text = text + "\r\n\n本文来自CSDN博客,转载请标明出处:" + location.href;
clipboardData.setData("text", text);
}
}, 100);
}
}
// --></script><script type="text/javascript"><!--
function StorePage() { d = document; t = d.selection ? (d.selection.type != 'None' ? d.selection.createRange().text : '') : (d.getSelection ? d.getSelection() : ''); void (keyit = window.open('http://www.365key.com/storeit.aspx?t=' + escape(d.title) + '&u=' + escape(d.location.href) + '&c=' + escape(t), 'keyit', 'scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes')); keyit.focus(); }
// --></script>
关于JSON的好处就不说了,反正我是喜欢上它了,也开始在自己的项目中使用JSON,前两天刚到官网下载了最新的
json.js文件,结果我的页面一打开就报错:too much
recursion!在IE和FF中都是如此,刚开始以为是自己的代码写错了,后来仔细看看才发现应该是json.js这个文件有问题,于是照例
Google,找到不少资料,不少开发者在使用最新版的json.js文件时都出现了这个问题。
I started off by using the JSON js code, however
this
code is unusable
for
1
major reason
-
it adds a method to array
'
s/objects, resulting in the fact that foreach() always returns an additional member. (breaking almost all the existing javascript code!) - I also ran into problems with recursion in firefox (but I think thats due to me forgetting to add the String.prototype method.)
JSON扩展了Javascript的基本对象,提供了toJSONString()方法,而JQuery也扩展了基本对象,提供了一些方法,有可能是这
些方法之间存在冲突,无意中发现有个开发者提到他在用旧版的json.js时并没有碰到这种情况,只是在更新了版本后才出来这种问题的,所以我将
json.js替换成比较旧点的版本,结果那个烦人的too many recursion再没出现了。
思考:国内用JSON和JQuery的人也不少了,还有不少实例教我们怎么用这个toJSONString()方法的,可为什么就没有人提到这个问题呢?
难道这些实例都只是一个简单的翻译,就没有人自己去实践过?不解。
附:旧版JSON的下载地址如下
Site:
http://web.archive.org/web/20060208035938/http://www.crockford.com/JSON/js.html
JS:
http://web.archive.org/web/20060208035938/http://www.crockford.com/JSON/json.js
z_j
发表于Thursday, July 19, 2007
3:25:30 PM IP:124.249.230.*
举
报
回复
删除
把
第156行处的 if (typeof v.toJSONString === 'function') {
改成
if (typeof v.toJSONString == 'function') {
即把 === 改成 == 就可以了
luobo525
发
表于Saturday, February 23, 2008 8:10:12 PM IP:60.27.95.*
举
报
回复
删除
这个问题苦恼了一天,太好了!哈哈!!
<a href="http://dl.iteye.com/upload/attachment/503968/e338736e-f9fe-305a-b644-5c63c3613db2.png">下载后改下扩展名[json.js]
</a>
- 大小: 5.2 KB
分享到:
相关推荐
**json.js** 和 **json2.js** 是两个JavaScript库,用于在浏览器环境中处理JSON数据。`json.js`可能是早期的一个JSON处理库,它提供了JSON的解析(`parse()`)和字符串化(`stringify()`)功能,使得在不支持JSON的...
JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)是两种广泛使用的数据交换格式,它们在Web服务和应用程序之间传输数据时起到至关重要的作用。jQuery是一个流行的JavaScript库,它简化了DOM...
总结,`jQuery.json.js`这个文件可能是jQuery的一个扩展插件,专门用于增强jQuery对JSON的支持。在实际项目中,通过使用jQuery提供的这些方法,开发者可以轻松地处理JSON数据,实现与服务器的高效通信。同时,理解...
json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js json.js
"json.js" 可能是一个JavaScript库,比如著名的`json2.js`或`jQuery`等,它们提供了将JavaScript对象转换为JSON字符串以及从JSON字符串解析成JavaScript对象的功能。 在JavaScript中,原生支持JSON对象,提供了`...
总结来说,json2.js是一个解决旧版JavaScript引擎中JSON支持问题的库,提供JSON.parse()和JSON.stringify()等方法,使得在不支持JSON的环境中也可以进行JSON数据的解析和序列化操作。随着浏览器技术的发展,它的使用...
在Java中,`org.json.jar`提供了解析和生成JSON的工具,而在JavaScript中,`json.js`(如果是用于旧版浏览器)或者原生的JSON对象用于JSON操作。在JSP开发中,这两个组件可以帮助实现服务器与客户端之间JSON格式的...
json2.js: This file creates a JSON property in the global object, if there isn't already one, setting its value to an object containing a stringify method and a parse method. The parse method uses ...
1. `josn2.js`:这是一个可能包含全面JSON功能的库,例如在一些老版本的JavaScript环境中,原生不支持JSON,这时可以引入`json2.js`来提供JSON.parse()和JSON.stringify()等方法。 2. `json.js`:此文件可能是一个...
json3.js 【JS / JavaScript 中解析JSON的js包,JSON官方的JSON解析包】。JavaScript中解析JSON的js包,页面中引入json3.js,即可使用。 使用方法:JSON.parse(str), JSON.stringify(obj) 更多详情请参考博文: ...
标题中的“json.js”和“json2.js”可能是指两个不同的JSON解析和序列化库,用于JavaScript环境。这两个文件可能是为了在浏览器环境中处理JSON数据而提供的工具。下面分别对它们进行详细的解释: 1. **json.js**:...
JSON.js则主要提供了JSON(JavaScript Object Notation)的解析和字符串化功能,使得数据交换变得更加便捷。 冲突主要出现在以下情况:json.js库中有一个全局函数`JSON`,用于处理JSON数据,而jQuery在某些版本中也...
在某些场景下,我们需要将XML数据转换为JSON格式,以便于JavaScript进行处理,这正是"jquery-xmlToJson.js"这个文件的作用。 "jquery-xmlToJson.js"是一个jQuery插件,它的主要功能是将XML文档或字符串转换为JSON...
在这个“Newtonsoft.Json.dll+Json.js合集”中,我们聚焦于两个关键的JSON处理库——Newtonsoft.Json.dll(.NET平台)和Json.js(JavaScript环境),它们都是处理JSON数据的强大工具。 Newtonsoft.Json.dll是由...
`json.js`可能是一个用于处理JSON数据的JavaScript库,而与jQuery冲突的问题通常出现在两个库都尝试使用相同的全局变量或者方法名。 在JavaScript中,JSON主要用于序列化和解析数据对象,使得数据可以在客户端和...
JSON.js和json2.js是两个常见的JavaScript库,用于在JavaScript环境中处理JSON数据。 1. JSON.js:这是一个早期的JSON解析器和字符串化器,主要用于将JavaScript对象转换为JSON字符串,以及将JSON字符串解析为...
主要介绍了JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能,结合实例形式分析了JSON.parse()与JSON.stringify()方法实现深拷贝的相关实现技巧与操作注意事项,需要的朋友可以参考下
4. **jquery.json.min.2.3.0.js**:这是一个JSON(JavaScript Object Notation)处理的jQuery插件,允许在JavaScript中更方便地解析和生成JSON数据。JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于...
jsp使用JSON.stringify()引用的json2.js