本文通過for循環來獲取json結點數據,需要的朋友可以參考以下這串json數據用來存儲預加載的圖片路徑:
var imgData = [{
name: "p1",
src: "images/p1.jpg"
}, {
name: "p2",
src: "images/p2.jpg"
}, {
name: "p3",
src: "images/p3.jpg"
}, {
name: "p4",
src: "images/p4.jpg"
}, {
name: "p5",
src: "images/p5.jpg"
}
]
下面這個函數可通過json每行的name來獲取該行的路徑src,讓我們看一下代碼:
function getData(name) {
var picArr = imgData;
var picSrc;
for (var i = 0; i < picArr.length; i++) {
var cur_person = picArr[i];
if (cur_person.name == name) {
picSrc = cur_person.src;
}
}
return picSrc;
}
函數執行后將返回該行的src。
var g = getData("p1");
console.log(g);
輸出后即可看到結果為:images/p1.jpg
JS對象與JSON格式數據相互轉換
JS對象和JSON格式數據的相互轉換其實就是兩個問題:JS對象轉換成為JSON格式數據、JSON格式數據轉換成為JS對象。目前的項目數據交互幾乎都用JQuery,所以處理流程是:前端頁面數據-》JS對象-》jQuery提交-》python處理,另外一種就是倒過來。python肯定不能直接處理JS對象數據,所以要把JS對象轉換成為python能處理的一種數據格式(通常是字典dict),同樣,python取數據反饋到前端也要把字典數據轉換成JS能處理的對象,這個中間轉換數據格式通常就是JSON。
一、JS對象轉換成為JSON
流程:讀取前端頁面數據,組裝成為JS對象,并通過jQuery的$.post()方法傳遞給python。
處理:引用一個json2.js文件,調用JSON.stringify()方法。例如:var data = new Object(); var json_data = JSON.stringify(data);
讀取:python這里就很簡單了,用dict_data = json.loads(json_data)就OK了
二、JSON轉換成為JS
流程:python組裝一個dict數據并轉成JSON格式傳遞給前端,或者前端通過jQuery的$.getJSON()方法直接讀取這個JSON格式的數據
處理:用jQuery的一個方法$.parseJSON()將JSON格式的數據轉成JS對象。例如:var json_data = $.getJSON(); var data = $.parseJSON(json_data);
讀取:JS對像的操作就不必多說了
這里,python要把字典轉換成JSON格式數據,用json.dumps()這個方法就行了