本文實例講述了js/jquery遍歷對象和數組的方法。分享給大家供大家參考,具體如下:
JS forEach方法
arr[].forEach(function(value,index,array){ //do something}) 參數:value數組中的當前項,index當前項的索引,array原始數組; 數組中有幾項,那么傳遞進去的匿名回調函數就需要執行幾次; 理論上這個方法是沒有返回值的,僅僅是遍歷數組中的每一項,不對原來數組進行修改;但是可以自己通過數組的索引來修改原來的數組;var arr = [12,23,24,42,1];var res = arr.forEach(function (item,index,input) { input[index] = item*10;})console.log(res);//-->undefined;console.log(ary);//-->[120,230,240,420,10]; 通過數組索引改變了原數組JS map方法
arr[].map(function(value,index,array){ //do something}) 參數:value數組中的當前項,index當前項的索引,array原始數組; 區別:map的回調函數中支持return返回值;return的是啥,相當于把數組中的這一項變為啥(并不影響原來的數組,只是相當于把原數組克隆一份,把克隆的這一份的數組中的對應項改變了);var arr = [12,23,24,42,1];var res = arr.map(function (item,index,input) { return item*10;})console.log(res);//-->[120,230,240,420,10]; 原數組拷貝了一份,并進行了修改console.log(ary);//-->[12,23,24,42,1]; 原數組并未發生變化jQuery $.each方法
$.each(arr, function(index,value){ //do something}) 參數:arr要遍歷的數組,index當前項的索引,value數組中的當前項 第1個和第2個參數正好和以上兩個函數是相反的,注意不要記錯了var arr = [12,23,24,42,1];$.each(arr, function (index,item) { console.log(index) // 0 1 2 3 4 console.log(item) // 12 23 24 42 1})參考:
http://www.survivalescaperooms.com/article/81955.htm
http://www.survivalescaperooms.com/article/84609.htm
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.Vevb.com/code/HtmlJsRun測試上述代碼運行效果。
PS:這里再為大家推薦一款JS數組遍歷方式分析對比工具供大家參考:
在線JS常見遍歷方式性能分析比較工具:http://tools.Vevb.com/aideddesign/js_bianli
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數組操作技巧總結》、《JavaScript遍歷算法與技巧總結》、《javascript面向對象入門教程》、《JavaScript數學運算用法總結》、《JavaScript數據結構與算法技巧總結》及《JavaScript錯誤與調試技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答
圖片精選