无法获取未定义或空引用的属性“stringify”

时间:2014-11-13 13:23:02

标签: javascript ajax json

我在AJAX调用失败后收到此错误,并且我尝试通过对其进行字符串化并将其保存到sesssionStorage来记录错误对象。该站点不处于兼容性视图或企业模式,它是IE11,doctype是<!DOCTYPE html>,文档模式是Edge,用户代理字符串是Default。这只发生在蓝色的月亮一次,所以很难追踪到底发生了什么。我还没有能够得到正在抛出的错误,但是我将创建自己的字符串,捕获我现在需要的错误的详细信息,然后希望能够继续前进。

是否有其他人遇到JSON应该可用但不是的情况?同样,所有的doctypes /兼容性设置都很好,这只在蓝色月亮中发生过一次。

2 个答案:

答案 0 :(得分:0)

了解stringify here

问题的原因是您尝试调用stringify引用或null变量的undefined方法。要确保不是这种情况,请将您的值验证为有效的JSON:

function isNullOrUndefined(param) {
    return (!param);
}

然后在你为foo调用stringify之前:

if (!isNullOrUndefined(foo)) {
    //some code involving foo.stringify
}

答案 1 :(得分:0)

道歉史蒂夫,

我一直有一个noobs stringify问题,并且在收到相同的错误消息时无法在任何地方找到解决方案。我很高兴在这里承认,希望它可以帮助别人,确保你已经更新到最新版本的jquery ,我一直在使用1.4版本。 1随VS2010一起提供,现在在NuGet软件包的帮助下使用2.1.3。

希望它不违反规则或冒犯你,但这确实感觉是提供这些信息的最佳地点,即使我确信它对你没什么支持。