(TIL)反復文(for of,for in,forEach,while)

11341 ワード

for of


配列または文字列に使用可能な重複文

const fruits = ['apple', 'banana', 'kiwi', 'mango'];

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

//for of 문
for(let fruit of fruits){
  console.log(fruit);
}

/* (둘다 같은 결과)
'apple'
'banana'
'kiwi'
'mango'
*/

//문자열에 for of 문 사용시
const english = "abcdefg";
for(alphabet of english){
  console.log(alphabet);
}
/*
'a'
'b'
'c'
'd'
'e'
'f'
'g'
*/

オブジェクトでの使用法


オブジェクトを直接インポートすることはできませんが、オブジェクトを配列の関数オブジェクトに変換できます.entries()を適用して書くことができます.
const fruits = {
  apple : 'red',
  banana : 'yellow',
  kiwi : 'green',
  grape : 'purple'
}

const result = Object.entries(fruits);

for(let fruit of result) {
  let [key, value] = fruit; // 구조분해할당
  console.log(`key는 ${key}, value는 ${value}`);
}

/* 더 간결하게 작성하면
for(let [key, value] of Object.entries(fruits)) {
  console.log(`key는 ${key}, value는 ${value}`);
}
*/

/* console.log 결과
'key는 apple, value는 red'
'key는 banana, value는 yellow'
'key는 kiwi, value는 green'
'key는 grape, value는 purple'
*/

for in


オブジェクト、配列、文字列に使用できる重複文

const fruits = {
  apple : 'red',
  banana : 'yellow',
  kiwi : 'green',
  grape : 'purple'
}

for(let key in fruits){
  console.log(`key는 ${key}, value는 ${fruits[key]}`);
}

/* console.log 결과
'key는 apple, value는 red'
'key는 banana, value는 yellow'
'key는 kiwi, value는 green'
'key는 grape, value는 purple'
*/
  • のみでは、オブジェクトが作成された順序で巡回することは保証されません.これは,オブジェクト自体が順序保障されていないデータであるためである.
  • forEach()


    アレイに使用可能な方法


    forEachメソッドのパラメータは、(現在処理する要素、要素のインデックス、およびforEachを呼び出す配列の配列全体)の3つです.
    const fruits = ['apple', 'banana', 'kiwi', 'mango'];
    
    fruits.forEach((value, index, array) => {
      console.log(value, index, array);
    })
    /*
    'apple' 0 [ 'apple', 'banana', 'kiwi', 'mango' ]
    'banana' 1 [ 'apple', 'banana', 'kiwi', 'mango' ]
    'kiwi' 2 [ 'apple', 'banana', 'kiwi', 'mango' ]
    'mango' 3 [ 'apple', 'banana', 'kiwi', 'mango' ]
    */
    forEach() 例外を投げ出さない限り、途中で停止することはできません(繰り返し中にbreakで終了することはできません).途中で停止する必要がある場合は、別の複文を使用したほうがいいです.

    while


    whileは条件式を真(true)まで繰り返します(falseに遭遇した場合、while文を終了します).
    いつ結果が出るか分からないために、結果が出るまで無限に実行する必要があります.したがって,記述されたコードが正しくないと無限ループによって問題が発生するため,注意して使用する.
    //while 은 최초식, 조건식, 증감식으로 이루어져있다.
    let count = 0;  //최초식
    while( count !== 5 ) {  //조건식
    
        console.log(count);
        count++;  //증감식
    }
    /*
    0
    1
    4
    2
    3
    4
    */