这是一个正确的JSON吗?我们如何解析它?

时间:2014-05-23 10:44:06

标签: json wcf

我的网络服务将以下提到的输出作为JSON返回,

{"FetchSitePerformanceAutoResult":[{"DailyTimeStamp":"Nov 01, 2013","Performance":106917}]}

但我怀疑是因为我无法解析它。 如果它是正确的请告诉我如何解析它?我想将它绑定到图表。

完整代码

var retVal = '{"FetchSitePerformanceAutoResult":[{"DailyTimeStamp":"Nov 01, 2013","Performance":106917},{"DailyTimeStamp":"Nov 02, 2013","Performance":119542}]}';
alert('Before parsing ' + retVal);
var passValue = JSON.parse(retVal);
alert('After parsing Count ' + passValue.count);

上次提醒输出为解析Count undefined后。

5 个答案:

答案 0 :(得分:2)

要判断JSON是否正确,您可以使用http://jsonlint.com/您的JSON是正确的。要解析它,请使用.net JSON反序列化器http://msdn.microsoft.com/en-us/library/system.runtime.serialization.json.datacontractjsonserializer.aspx或JSON.NET另请参阅此处进行讨论:Does .NET 4 have a built-in JSON serializer/deserializer?

编辑:正如您想要的Javascript,请使用JSON.parse。请参阅此处的一些讨论:http://www.json.org/js.html这也解释了为什么你不应该使用eval(json),它也有效,但被认为是一种安全风险。

答案 1 :(得分:2)

在javascript中解析json的最简单方法是将它存储在变量中并且可以像这样继续:

var jsonString=JSON.parse(yourJsonString);

然后您可以相应地获取每个键及其值。

请在JsonEditoronline.org上查看您的json,以便更好地阅读此内容。

这是我在javascript中阅读json的示例:

success:function(responseText)
                {
                     alert(responseText);
                    return false; 

                    var object= JSON.parse(responseText);
                    var response= object.response;
                    var div=$('<div></div>');
                    var docs= response.docs;

我的json是这样的:

{"response":{"docs":""}}

希望它有所帮助。

我使用javascript解析你的json并且能够使用:

解析它
var myString='{"FetchSitePerformanceAutoResult":[{"DailyTimeStamp":"Nov 01, 2013","Performance":106917}]}';

               var jsonString=JSON.parse(myString);
               alert("---------==="+jsonString);

               var fetch= jsonString.FetchSitePerformanceAutoResult;
               alert("llllllll    -- "+fetch.length);

               var time= fetch[0].DailyTimeStamp;
               alert(time);

答案 2 :(得分:1)

是的,你的json输出是正确的,你可以在这里检查自己是Link,这将帮助你将你的json转换为c#类。希望这会有所帮助。

答案 3 :(得分:1)

这是一个有效的JSON字符串。您可以在http://jsonlint.com/

查看

答案 4 :(得分:1)

这是合法的 - php json_decode('{"FetchSitePerformanceAutoResult":[{"DailyTimeStamp":"Nov 01, 2013","Performance":106917}]}');解析得很好。