• for, for in, for of, map, forEach 循环的区别:


    for, for in,  for of, map, forEach 循环的区别:

    for  遍历数组:

    1 //对象遍历数组
    2 var  arr = [
    3         {Monday: '星期一', Tuesday: '星期二', Wednesday: '星期三'}
    4     ]
    5 for (var i=0; i<arr.length;i++){ // i是下标(索引)
    6     console.log(i)
    7     console.log(arr[i])
    8 }

    结果:

    //数组
    var arr = ["星期一","星期二","星期三"]
    for (var j=0; j<arr.length;j++){  // j是下标(索引)
    	console.log(j)
    	console.log(arr[j])
    }

    结果:

     forEach:遍历数组,但不能使用break、continue和return语句:

    //对象数组
    var arr = [
    {guangzhou: '广州', shanghai: '上海', beijing: '北京'},
    {Monday: '星期一', Tuesday: '星期二', Wednesday: '星期三'}
    ]
    arr.forEach(function(value,index){ //第一个参数是值,第二个参数是下标(索引)
    console.log(value)
    console.log(index)
    })

     

      

    结果:

    //数组
    var arr = ["星期一","星期二","星期三"];
    arr.forEach(function(value,index){//第一个参数是值,第二个参数是下标(索引)
    		console.log(value)
    		console.log(index)
    })
    

    结果:

     for…in:遍历数组索引、对象的属性
    使用for…in遍历时,原型链上的所有属性都将被访问:

    //数组
    var arr = ["星期一","星期二","星期三"];
    Array.prototype.something = ["放假","休息咯"];
    for (var i in arr){ // i是下标(索引)
    	console.log(arr[i])
    }
    

      

    结果:

    //对象
    var obj = {guangzhou: '广州', shanghai: '上海', beijing: '北京'}
    Object.prototype.something2={shenzhen:'深圳'}
    for (var i in obj){ 
    	console.log(obj[i])
    }
    

      

     结果:

    map 遍历数组:

      var arr = ['星期一', '星期二', '星期三'];
          var a = arr.map(function(item){
            console.log(item)
            return item  === '星期二'
        })
        console.log(a)
    

      

     结果:

    map 注意:

    map 有返回值。并且可以返回一个结果数组。但是map 遍历对象的话也会报错,所以map只能循环数组或者对象数组

  • 相关阅读:
    python面向对象之类,对象
    面向对象简介
    序列化模块
    sys模块简单使用
    day26作业
    day22
    day21作业
    day21
    day20作业
    day20
  • 原文地址:https://www.cnblogs.com/yjzs/p/12094790.html
Copyright © 2020-2023  润新知