后台給前台傳來一個map
@ResponseBody @RequestMapping(value = "getSys") public Map<Long,String> getSys(){ Map<Long,String> map = orderService.getSysDate(); return map; }
前台js中怎么迭代呢?【注意each的使用】這只是一種方法,如果想看更多的方法和各個方法的區別,請往下看分割2.
$.post("getSys.jhtml", function(data){
var temp = "";
$.each(data,function(i,d){
temp += '<option value="'+i+'" >'+d+'</option>';
});
console.log(temp);
debugger;
$("#lab").append(temp);
});
結果如下:

================================================================分割1:js小知識==========================================================
【小知識點】:
①debugger; 頁面刷新會停留在代碼的debugger;行。類似於js中打斷點
②console.log(temp); 打印在控制台
========================================================分割2:下面對比each兩種寫法的區別========================================================================
【注意一點】:
each的寫法有兩種,有一種可以map迭代、json對象迭代、數組迭代、list迭代。
有一種,不能迭代map、json對象,只能迭代數組和list。
數組和list都靠下標取值,且js中並無list或map的概念。
所以,數組和list等同,在這里示例中。
map和json對象等同,在這里示例中。【唯一區別在於下面示例中map的key並沒有引號,而json對象的key一定要被引號引起來】
[$().each 迭代數組]

[$().each 迭代map]


[$.each() 迭代map]


[$.each() 迭代數組]

[for 循環數組]


[for循環map]


=============================================================分割3:map和json轉化===========================================================


而將map轉化為標准json字符串,再轉化為JSON對象就是可以的。


