<p>将字符串转换成JSON对象,搜集到两种可行方法,整理下,留以后备用,一种是传统的eval动态执行的方式进行创建,一种是使用Jquery进行转换。为了测试,准备两组字符串如下:varstrFor_eval='{name:"张三",age:"20",Address:[{Home:"家庭地址1",Company:"公司地址1"},{Home:"家庭地址2",Company:"公司地址2"}]}';varstrFor_parseJSON='{"name":"张三","age":20,"Address":[{"Home":"家庭地址1","Company":"公司地址1"},{"Home":"家庭地址2","Company":"公司地址2"}]}';两组字符串均是符合JSON的组建规则。不同的是,第二组字符串中的键和第一组中的不同。多了一对双引号。这就是Jquery和eval在JSON格式上要求的区别。以下为测试的时候用的代码:<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="WebForm1.aspx.cs"Inherits="WebApplication1.WebForm1"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><headrunat="server"><title>将字符串转换成JSON对象的两种可行方法</title><scriptsrc="jquery-1.4.1-vsdoc.js"type="text/javascript"></script><scriptlanguage="javascript"type="text/javascript">varjsonObj=null;varstrFor_eval='{name:"张三",age:"20",Address:[{Home:"家庭地址1",Company:"公司地址1"},{Home:"家庭地址2",Company:"公司地址2"}]}';varstrFor_parseJSON='{"name":"张三","age":20,"Address":[{"Home":"家庭地址1","Company":"公司地址1"},{"Home":"家庭地址2","Company":"公司地址2"}]}';varshowResult=function(type){switch(type){case"eval"://return;jsonObj=eval('('+strFor_eval+')');break;case"jq":jsonObj=$.parseJSON(strFor_parseJSON);break;}varstr=type+'方式,转换结果如下:'+'</p><p>'+'姓名:'+jsonObj.name+'</p><p>'+'年龄:'+jsonObj.age+'</p><p>'+'家庭地址(1):'+jsonObj.Address[0].Home+'</p><p>'+'公司地址(1):'+jsonObj.Address[0].Company+'</p><p>'+'家庭地址(2):'+jsonObj.Address[1].Home+'</p><p>'+'公司地址(2):'+jsonObj.Address[1].Company+'</p><p>';alert(str);}</script></head><body><formid="form1"runat="server"><div><inputtype="button"value="Show"onclick="showResult('eval');"/></div></form></body></html></p>