js中json与数组字符串的相互转化

var t="{'firstName': 'cyra', 'lastName': 'richardson', 'address': { 'streetAddress': '1 Microsoft way', 'city': 'Redmond', 'state': 'WA', 'postalCode': 98052 },'phoneNumbers': [ '425-777-7777','206-777-7777' ] }"; var jsonobj=eval('('+t+')'); alert(jsonobj.firstName); alert(jsonobj.lastName);var t2="[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";var myobj=eval(t2);for(var i=0;i<myobj.length;i++){ alert(myobj[i].name); alert(myobj[i].age);}上面的是百度经验上的下面是我的 while ($row=mysql_fetch_array($query)) { $arr[] = array( 'left'=>$row['lv1_left'], 'top'=>$row['lv1_top'] ); } $arr= json_encode($arr) ?> <script src="jquery-1.8.0.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">var strJSON = "<? echo $arr?>";这里是格式错误怎么改?for(var i=0;i<myobj.length;i++){ alert(myobj[i].left); alert(myobj[i].top);}

你网上下载json2.js ,直接使用json2.js 里面的方法,
var myObject = JSON.parse(_data);
alert("对象:"+myObject.msg);

// 转换成数组
var myobj = eval("["+_data+"]");
for (var i = 0; i < myobj.length; i++) {
alert("数组:"+myobj[i].msg);
}

//把json格式的字符串转成JSON对象

var json1 = '{"department": "中兵","address": "北京","contacts": "李硕","telphone": "15201274666","email": "[email protected]","fax": "0108596666"}';
var json2 = '{"department": "中兵2","address": "北京2","contacts": "李硕2","telphone": "152012746662","email": "[email protected]","fax": "01085966662"}';
var jsonObj = $.parseJSON(json1); 或用eval方法

//把数组转成JSON对象

var arr=new Array();
arr.push(json1);
arr.push(json2);
var b=JSON.stringify(arr)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-08-31
单引号包含双引号