一個朋友問物件如何轉為數組,當我問他為啥要轉得時候,他告訴我,數組可以用js循環遍歷,而物件則不可以。其實呢,對象同樣可以循環遍歷的啊。不用轉換也可以循環!說明你對js或jquery的某些操作不是很熟練!這裡我簡單介紹一下!
案例
我們看如下物件:
var data={ 张三:69, 李四:72, 王五:90, 二麻子:88, 前端博客:100, haorooms : 98, 王大壮:99 }
假如上面是後台回傳的一個key,一個是value的物件(這種物件相信大家常常遇到吧!),現在要把這個內容,循環綁定到一個表格中。有的朋友對物件的循環就不知道怎麼操作了!今天我要跟大家介紹兩個方法!
方法一:
用$.each的方式進行循環!
假如你不知道$.each的話,建議大家上網搜尋。當然也可以搜尋“jquery的$().each,$.each的區別”,關於他們的區別,我在這裡就不詳細介紹了。可能有的朋友$().each這個方式用的比較多,今天主要跟大家介紹$.each。
$.each()可以遍歷數組和物件。方式如下:
$.each([{“name”:”haorooms”,”email”:”bb@126.com”},{“name”:”qianduan”,”email”:”aa@hao.com”}],function(i,n) { alert(“索引:”+i,”对应值为:”+n.name); });
也可以這麼遍歷:
var arr1 = [ “one”, “two”, “three”, “four”, “five” ]; $.each(arr1, function(){ alert(this); });
輸出:one two three four five
最爽的是可以遍歷陣列:
var obj =data;//上面复制的data $.each(obj, function(key, val) { alert(obj[key]);//可以输出成绩 console.log(key);//可以输出姓名 });
方法二:
用for in循環,可以遍歷obj
對上面的對象,我們可以這麼寫來循環!
for(var i in data){ console.dir(i);//输出姓名 console.dir(data[i]);//输出分数 }
for in循環相信大家應該不陌生! for迴圈我們用到比較多的是for(var i=0;i 另外,假如我們遇到如下對象: 我們可以用data.haorooms得到98,但是我們用“data.前端博客”會報錯,因此,在我們用漢字做key值的時候,選取的時候應該用data["前端博客"],這種方式來選擇,不要再用點號了。 以上就是jquery中object物件循環遍歷的方法,希望對大家的學習有所幫助。
var data={
张三:69,
李四:72,
王五:90,
二麻子:88,
前端博客:100,
haorooms : 98,
王大壮:99
}