遍历(For of Loop Examples)

 Array.prototype.first = function () {
    return this[0]
  }
  const fruits = ['Apple', 'Banana', 'Orange', 'Mango']
  fruits.desc = 'My favorite fruits'
  
  
  //for循环的缺点,结构复杂,可读性不高
  for (let i = 0; i < fruits.length; i++) {
    console.log(fruits[i])
  }
  //Apple Banana Orange Mango

  //forEach的缺点是不能终止与跳过
  fruits.forEach(fruit => console.log(fruit))
  //Apple Banana Orange Mango

  //需要注意的是forin遍历的是对象上可枚举属性
  for (let index in fruits) {
    console.log(fruits[index])
  }
  //Apple Banana Orange Mango My favorite fruits ƒ (){return this[0]}

  //因此为了解决以上的问题,ES6提供了forOf
  for (let fruit of fruits) {
    if(fruit==='Banana'){
      break;
    }
    console.log(fruit)
  }
  //Apple
for of 的应用
//遍历字符串
  const string = 'ABCDEF'
  for (let str of string) {
    console.log(str)
  }
  //A B C D E F

  //遍历arguments
  function list(){
    for(let arg of arguments){
       console.log(arg)
    }
  }
  list(1,2,3,4,5)
  //1 2 3 4 5

    //遍历数组
    for(let [index,fruit] of fruits.entries()){
      console.log(`${index++}---->${fruit}`)
    }
  /**
   * 0---->Apple
   * 1---->Banana
   * 2---->Orange
   * 3---->Mango
   */
遍历DOMList
<style>
   .completed {
      text-decoration: line-through;
    }
</style>
<body>
<ul>
    <li>Apple</li>
    <li>Banana</li>
    <li>Orange</li>
    <li>Mango</li>
</ul>
<script>
  //遍历Domlist
  const domList = document.querySelectorAll('li')
  for (let li of domList) {
    li.addEventListener('click', function () {
      this.classList.toggle('completed')
    })
  }
    
</script>
</body>
点击事件
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容