Crossrider在IE11中没有正确地将数组序列化为JSON

时间:2015-02-16 01:11:19

标签: json internet-explorer crossrider

在执行appAP.JSON.stringify()或常规JSON.stringify()方法时,我在IE11中遇到了JSON序列化问题。它似乎总是在Chrome下正常工作。

我得到的问题是相当基本的,以下代码

var x = [" x"," b"];     警报(JSON.stringify(X));

在运行crossrider extension.js时,IE 11下会产生不正确的json,结果将是{" 0":" x"," 1":& #34; b"}

预期结果应该是[" x"," b"]。我总是在Chrome中得到这个(正确的)结果,如果它的代码直接在页面上运行,我会在IE中得到这个结果。

这让我感到悲伤,因为我发送的JSON反序列化器无法将对象转换为数组。

任何想法为什么crossrider stringify()调用会序列化不同于本机IE?

1 个答案:

答案 0 :(得分:1)

问题是由于使用了JSON.stringify()而不是appAPI.JSON.stringify()

请注意,使用jquerys $ .ajax样式函数会使用JSON.stringify,因此会失败。

Crossrider确认问题是IE不会像Chrome那样序列化(即 - 正确)。