我的网络服务将以下提到的输出作为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后。
答案 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}]}');
解析得很好。