js json字串轉json 物件
阿新 • • 發佈:2019-01-27
var data = [{ "id": 1, "startTime": "2017-12-12 10:36:50", "endTime": "2018-02-02 00:00:00", "value": "0.26", "jobCode": "zd_test_02_171212103650", "status": "正常", "machCode": 1 }, { "id": 2, "startTime": "2018-01-03 00:00:00", "endTime": "2018-01-12 00:00:00", "value": "0.66", "jobCode": "close_test_05_171212103622", "status": "調機", "machCode": 3 }, { "id": 3, "startTime": "2018-01-01 00:00:00", "endTime": "2018-01-22 00:00:00", "value": "0.76", "jobCode": "close_test_06_171212103603", "status": "修機", "machCode": 4 }, { "id": 4, "startTime": "2018-01-05 00:00:00", "endTime": "2018-01-16 00:00:00", "value": "0.36", "jobCode": "fms_test4_6_171212103510", "status": "待機", "machCode": 5 }, { "id": 5, "startTime": "2018-01-08 00:00:00", "endTime": "2018-01-29 00:00:00", "value": "0.96", "jobCode": "zd_test_02_171115174821", "status": "修模", "machCode": 6 }]; var groups_code = ''; for (var i = 0; i < data.length; i++) { groups_code = groups_code + '{"content":"' + data[i].machCode + '","id":"' + data[i].jobCode + '" ,"className":"openwheel"}' + ',' } //去除最後一個逗號 groups_code = groups_code.substring(0, groups_code.length - 1); groups_code = '[' + groups_code + ']'; //將json 字串轉成json物件 var obj_groups = JSON.parse(groups_code);
例如:
JSON字串:
var str1 = '{ "name": "cxh", "sex": "man" }';
JSON物件:
var str2 = { "name": "cxh", "sex": "man" };
一、JSON字串轉換為JSON物件
要使用上面的str1,必須使用下面的方法先轉化為JSON物件:
//由JSON字串轉換為JSON物件
var obj = eval('(' + str + ')');
或者
var obj = str.parseJSON(); //由JSON字串轉換為JSON物件
或者
var obj = JSON.parse(str); //由JSON字串轉換為JSON物件
然後,就可以這樣讀取:
Alert(obj.name);
Alert(obj.sex);
特別注意:如果obj本來就是一個JSON物件,那麼使用eval()函式轉換後(哪怕是多次轉換)還是JSON物件,但是使用parseJSON()函式處理後會有問題(丟擲語法異常)。
二、可以使用toJSONString()或者全域性方法JSON.stringify()將JSON物件轉化為JSON字串。
例如:
var last=obj.toJSONString(); //將JSON物件轉化為JSON字元
或者
var last=JSON.stringify(obj); //將JSON物件轉化為JSON字元
alert(last);