Javascript 为什么JSON.stringify会给出JSON未定义错误?

Javascript 为什么JSON.stringify会给出JSON未定义错误?,javascript,json,extjs,Javascript,Json,Extjs,我试图在我的javascript页面(EXTJS)代码中使用JSON.stringify,但它给了我JSON是未定义的错误。错误只发生在IE(版本10)中。此代码将在FF和Chrome中工作。下面是我尝试使用的示例代码。为什么会失败?这似乎是一个有效的示例,适用于其他浏览器。提前谢谢 var contact = new Object(); contact.firstname = "Joe"; contact.surname = "Smith"; contact.gendere= "male";

我试图在我的javascript页面(EXTJS)代码中使用
JSON.stringify
,但它给了我JSON是未定义的错误。错误只发生在IE(版本10)中。此代码将在FF和Chrome中工作。下面是我尝试使用的示例代码。为什么会失败?这似乎是一个有效的示例,适用于其他浏览器。提前谢谢

var contact = new Object(); 
contact.firstname = "Joe";
contact.surname = "Smith";
contact.gendere= "male";
var jsonText = JSON.stringify(contact);


在文档的顶部(当然还要删除您可能拥有的任何其他doctype)


如果没有它,IE10将处于一种奇怪的兼容模式,其中许多“新”功能都不可用,例如
JSON

如果您只需要支持IE10,请使用
。如果您需要使用早期版本的IE(有些人仍然需要支持IE6),您可以使用JSON的JS实现:

您已经有了框架,请使用它:
Ext.JSON.encode/decode

这是事实,如果您正在进行新的开发,那么这是唯一的解决方案。但是,如果您正在维护依赖于已损坏布局的旧页面,则可以从json.org网站包含json.js。@JeremyJStarcher确实如此。但人们是否仍在维护与IE8兼容而与其他浏览器不兼容的应用程序?在面向公众的网站上,情况并非如此,但仍有许多网站内部和私人网站尚未更新。很多都局限于旧的IE引擎来做ActiveX依赖。好吧,我试过了,但没有效果,同样的问题,JSON未确定错误。还有其他想法吗?@JS11您是否尝试过使用我的回复中的JSON js实现?嗨,Nirk,我目前正在使用json2.js,我注意到您推荐的链接:“JSON.js:这个文件完成了json2.js所做的一切。它还向Object.prototype添加了一个toJSONString方法和一个parseJSON方法。不建议使用这个文件。”不建议使用此文件-这一部分令人困惑me@JS11使用文件json2.js——它复制JSON对象(使用parse和stringify)。json.js是一个较旧的接口当您使用{}而不是新对象()时会发生什么?如果您使用像{firstname:'Joe',姓氏:'Smith',gendere:'male'}这样的硬编码对象,它会工作吗?嗨,schlingel,我在硬编码时遇到了相同的错误“JSON undefined”。
<!DOCTYPE html>