将javascript对象转换为json字符串,而不是使用JSON.Stringify

时间:2011-04-13 10:04:23

标签: jquery

我正在尝试将javascript对象转换为JSON字符串。除了JSON.stringify()之外还有其他选择吗?因为该方法在IE 7中给出了错误....它在IE8以及其他浏览器中的作用非常完美。所以只是想知道有没有办法转换javascript对象,如:

var Schedules = new Object();
Schedules.ProjectTypeID = "abc";
Schedules.ProjectID = "123";
Schedules.ScheduleID = "12345";
Schedules.MilestoneID = "milestone1";

它应该给json字符串类似

{"ProjectTypeID":"abc","ProjectID":"123","ScheduleID":"12345","MilestoneID":"milestone1"}

3 个答案:

答案 0 :(得分:1)

使用此github中的json2.js:https://github.com/douglascrockford/JSON-js

希望这有帮助。

答案 1 :(得分:1)

你在IE7中收到错误的原因是因为具有.stringify()功能的JSON库并不是IE7 JS模型中固有的(如果我弄错的话,请纠正我)。

因此,当您处于IE7环境(或其他不兼容的环境)时,您要做的就是包含Kon在上面的答案中提到的json2.js文件。

我猜你还是可以加载它。我很确定它不会导致碰撞。

答案 2 :(得分:0)

不确定这会对您有所帮助,但您可以从头开始以JSON格式构建它:

var Schedules = {
  ProjectTypeID : "abc",
  ProjectID : "123",
  ScheduleID : "12345",
  MilestoneID : "milestone1"
}