插件窝 干货文章 迭代语句即for-of循环

迭代语句即for-of循环

fruits entries banana orange 550    来源:    2024-10-21

for-of:

  • 在 es6 中引入
  • 通常循环有计数器、检查条件、更新计数器。 for-of 循​​环没有这样的东西。
  • continue-break 两者都可以搭配使用。
  • 旨在为我们提供当前元素。
fruits = ['banana','apple','peach','orange','mango','guava','water-melon'];

for(const item of fruits){
  console.log(item);
}

'banana'
'apple'
'peach'
'orange'
'mango'
'guava'
'water-melon'
- If an array if looped over in the form of array.entries(), then the result will be each element in form of an array with index : value.

for(const item of fruits.entries()){
  console.log(item);
}

[ 0, 'banana' ] 
[ 1, 'apple' ] 
[ 2, 'peach' ] 
[ 3, 'orange' ] 
[ 4, 'mango' ] 
[ 5, 'guava' ] 
[ 6, 'water-melon' ]

// Transform it into a single array comprising of sub-arrays:
fruits.entries(); // Object [Array Iterator] {}

[...fruits.entries()]; 
// [ [ 0, 'banana' ], [ 1, 'apple' ], [ 2, 'peach' ], [ 3, 'orange' ], [ 4, 'mango' ], [ 5, 'guava' ], [ 6, 'water-melon' ] ]

// Transform into a single array using for-of loop:
-> Method 1
for(const item of fruits.entries()){
  console.log(`${item[0] + 1} : ${item[1]}`);
}
// '1 : banana' '2 : apple' '3 : peach' '4 : orange' '5 : mango' '6 : guava' '7 : water-melon'

-> Method 2
for(const [i,el] of fruits.entries()){
  console.log(`${i + 1} : ${el}`);
}
// '1 : banana' '2 : apple' '3 : peach' '4 : orange' '5 : mango' '6 : guava' '7 : water-melon'