JSON的遍歷(js)
阿新 • • 發佈:2018-11-09
今天在做前後端互動的時候需要把一個json中的陣列以表格(table)的形式輸出
然後就出現了標題的問題,怎麼遍歷JSON物件 ,
經過痛苦的糾結之後發現json物件是可以像陣列一樣使用下標遍歷的!
只不過json物件使用key值作為下標遍歷的, 並且作為下標的key值是字串形式
var j={"id":"1","name":"博通","age":"16","other":"帥"}
對於上述json在js用j["id"]就可以取到'1' ,j["name"]就可以得到'博通'
舉個例子,比如我在JAVA中拼出如下字串形式的json後輸出:
{"arr":[
{"id":"1","name":"博通","age":"16","other":"帥"},
{"id":"2","name":"自己","age":"21","other":"第一帥"},
{"id":"3","name":"任鬆","age":"17","other":"不穿褲衩"}
]}
我想做成3*4的表格就出現了js端怎麼遍歷每個json物件的問題
function changeData(da) {//da是json物件, 做成表格顯示在網頁上 for(var i in da.arr) { //新增陣列個數的行, i是arr的下標(0,1,2,3) $('#tab').append("<tr"+" id=\"r"+i+"\">"+"</tr>"); //給每行新增td, 每個j都是一個td for(var j in da.arr[i]) { $("#r"+i).append("<td>"+da.arr[i][j]+"</td>"); } } }
效果:
for(var j in da.arr[i])
{
$("#r"+i).append("<td>"+da.arr[i][j]+"</td>");
}
每個j是json的下標, 是字串