js中的一些循环

1.for in 循环

迭代对象的所有可枚举属性,给出属性名称
1
let obj = {a:1,b:2,c:3} 2 for(let prop in obj){ 3 console.log(obj[prop]);//用来遍历对象 4 }//1,2,3

2.for of 循环

循环数组

1 let arr = [1,2,3,4,5,6];
2 for(let index in arr){
3     console.log(arr[index]);
4 }//1,2,3,4,5,6

循环字符串

1 let arr = [1,2,3,4,5,6];
2 for(let index in arr){
3     console.log(arr[index]);
4 } //1,2,3,4,5,6

 3.forEach

es5引入。给定一个数组,可以使用arr.forEach()迭代其属性

let arr = [{a:1},{a:2},{a:3},{a:4},{a:5}]; arr.forEach(function(item, index, arr){ if(item.a === 3){ item.a = 6;//数组内变量为引用类型,遍历参数即为对应项的引用地址 console.log(item.a); //6 // return //跳过本次循环,即return本次遍历函数 } }); // 注: forEach无返回值,无法跳出循环

4.filter(item,index,arr)

  filter方法用来过滤数组成员,满足条件的成员组成新数组返回。

// filter用来满足某个条件,输出满足条件的数组
let arr = [1,2,3,4,5,6];
let arr1 = arr.filter(function(val){
    return val<=3;
})
console.log(arr1);//1,2,3

5.map()

 map方法将数组的所有成员依次传入参数函数,然后将每一次的执行结果组成新数组返回

需要注意的是:返回的是一个新数组,不会改变原来的数组

// map函数用来返回经过函数运算后的数组
let arr = [1,2,3,4,5,6];
let arr1 = arr.map(function(val){
    return ++val;
})
console.log(arr1);//2,3,4,5,6,7
原文地址:https://www.cnblogs.com/zoutuan/p/12010414.html