• 十一. for of


    const fruits = ['Apple','Banana','Orange','Mango'];
    

      

    es5: 可读性差

    for(let i=0; i < fruits.length; i ++){
       console.log(fruits[i]);
    }

    // Apple
    // Banana
    // Orange
    // Mango

      

    es6箭头函数:

    一. 注释: 缺点 不能终止或跳过循环 以下按钮会报错
    fruits.forEach(fruit =>{
     console.log(fruit);
    })
    fruits.forEach(fruit =>{
     if(fruit === 'Orange'){
      break;
     } console.log(fruit); })
    fruits.forEach(fruit =>{
     if(fruit === 'Orange'){
      continue;
     } console.log(fruit); })

    二. 注释: 会把原型上的属性跟内容也返回回来
    for (let index in fruits){
      console.log(fruits[index]);
    }
    
    Array.prototype.first = function(){
      return this[0];
    }
    const fruits = ['Apple', 'Banana', 'Orange', 'Mango'];
    fruits.describe = 'My favorite fruits';
    
    for (let index in fruits){
      console.log(fruits[index]);
    }
    
    // Apple
    // Banana
    // Orange
    // Mango
    // My favorite fruits
      function(){
        return this[0];
      }
    

      

    三:终极版,解决了上面循环的缺陷 不会打印出原型上一些属性,支持跳出循环
    for(let fruit of fruits){
      console.log(fruit);
    }
    // Apple
    // Banana
    // Orange
    // Mango
    
    for(let fruit of fruits){
      if(fruit === 'Orange'){
        break;  //终止
      }
      console.log(fruit);  // Apple Banana
    }
    
    for(let fruit of fruits){
      if(fruit === 'Orange'){
        continue;  //跳出循环
      }
      console.log(fruit);  // Apple Banana Mango
    }
    

      

  • 相关阅读:
    Segment Routing之IPv6 SR概述
    ping6 connect: Invalid argument
    glance image-list
    SRv6技术研究和组网设计
    physical_interface_mappings
    bond
    srv6 tools---SRext
    srv6
    8月18号
    8月17号
  • 原文地址:https://www.cnblogs.com/wangRong-smile/p/11927206.html
Copyright © 2020-2023  润新知