1

我的 javascript 我有一个类似于以下内容的对象:

var myObj = {
  prop1: 1,
  prop2: 2,
  prop3: ["a", "b", "c", "d", "e"],
  prop4: 4,
  prop5: ["f", "g", "h", "i"]
}

它是一个包含许多属性的对象。每个属性可能是也可能不是数组。

var serializedMyObj = JSON.stringify(myObj);

serializedMyObj是(通过查看firebug中serialize函数的结果发现):

"{ "prop1":1, "prop2":2, "prop3":["a","b","c","d", "e"], "prop4":4, "prop5":["f","g","h","i"] }"

如果我alert(serializedMyobj);告诉我:

{
  "prop1": 1,
  "prop2": 2,
  "prop3": [],
  "prop4": 4,
  "prop5": []
}

真正的问题是,当我将此数据传递给 Asp.Net PageMethod 时,服务器获得的数据与我在警报对话框中显示的数据相同,而不是在萤火虫中。某处它丢失了数组值,只放入[].

有谁知道为什么会发生这种情况或解决方法?这可能是我忽略的简单事情。

4

1 回答 1

1

我在 Firefox 上得到以下(正确)输出:

{"prop1":1,"prop2":2,"prop3":["a","b","c","d","e"],"prop4":4,"prop5":["f","g","h","i"]}

你使用的是什么浏览器?

另外,我注意到它myObj是小写的JSON.stringify(myobj);- 我认为这只是一个错字?

于 2010-02-19T22:22:40.417 回答