一、for循環
var list=[]; for(var i in data){ list.push( data[i].num ) }
二、forEach
具體介紹:https://www.runoob.com/jsref/jsref-foreach.html
eg:
<p>乘以10以后的值: <span id="demo"></span></p> <script> var numbers = [65, 44, 12, 4]; /** 參數 描述 ** currentValue 必需。當前元素 ** index 可選。當前元素的索引值。 ** arr 可選。當前元素所屬的數組對象。 **/
numbers.forEach(function(item,index,arr){
arr[index] = item * 10;
demo.innerHTML = numbers; //***改變了原數組
})
</script>
***注意:
forEach(): 沒有返回值,本質上等同於 for 循環,對每一項執行 function 函數。forEach 是改變原數組 。map是返回一個新數組,原數組不變。
forEach() 本身是不支持 continue 與 break 語句的。
不支持 continue,用 return false 或 return true 代替。 不支持 break,用 try catch/every/some 代替:
//1、實現 continue: //forEach() 使用 return 語句實現 continue 關鍵字的效果: var arr = [1,2,3,4,5]; arr.forEach(function (item) { if (item === 3) { return; } console.log(item); }); //最后輸出:1 2 4 5 ***說明item為3的元素跳過 var arr = [1,2,3,4,5]; arr.some(function (item) { if (item === 3) { return; // 不能為 return false } console.log(item); }); //最后輸出:1 2 4 5 false //2、實現 break: var arr = [1, 2, 3, 4, 5]; arr.every(function (item) { console.log(item); return item !== 3; }); //最后輸出: 1 2 3 false ***說明輸出3后直接跳出循環
三、判斷時用switch
switch case 如果循環就是break 如果是判斷就是return false;
// 如果循環 跳出用break switch(num){ case 1: xxxx break; case 2:xxxx break; default: break; } //是判斷就用 return false; switch(num){ case 1: xxxx return false; case 2:xxxx return false; default: return false; }
關於循環遍歷的多種 :https://blog.csdn.net/qq_41899174/article/details/827970 https://www.jb51.net/article/141193.htm