TIL



forEach, for..in, for..of文はjavascriptでよく使われる構文の1つです.今日は、これらの文法の機能を共有して、いつ使われているかを見てみましょう.

forEach


foreach反復文はArrayでのみ使用できます.配列中の要素をforeach文で繰り返し処理できるのが特徴です.

1.forEach文で値、インデックス、配列にアクセスできます。

let num = [1, 2, 3];
num.forEach(function(value, index, array){
  console.log(value); // 1 2 3
  console.log(index); // 0 1 2
  console.log(array); // [1, 2, 3];
});

2.配列中の値を加算することもできます。

let num = [1, 2, 3];
let sum = 0;
num.forEach(function(value){
  return sum += value; // 1 + 2 + 3
});

console.log(sum); // 6
// 화살표 함수의 형태로도 쓸 수 있다.
let num = [1, 2, 3];
let sum = 0;
num.forEach((value) => {
  return sum += value; // 1 + 2 + 3
});

console.log(sum); 
num配列の最初のインデックスから最後のインデックスへの匿名関数{.}繰り返し実行は、関数のパラメータに渡され、繰り返し実行される関数をコールバック関数と呼びます.

for ..複文


for ..in繰り返し文では、オブジェクトのプロパティを繰り返し処理し、すべてのオブジェクトに使用できます.また、配列に書き込むと、配列のインデックス値にアクセスできます.

1.オブジェクトに書き込む場合

let obj = { a: 1, b: 2, c: 3 };

for (let key in obj){
  console.log(key); // a b c
  console.log(obj[key]); // 1 2 3

2.配列への書き込み

let name = [ 'kim', 'park', 'lee' ];
for (let i in name){
  console.log(i); // 0 1 2 (index)
}

for ..くりかえし文


for ..of文は、配列内の値または文字列内の文字にアクセスできます.

1.配列に書き込む場合

let name = [ 'kim', 'park', 'lee' ];
for (let i of name){
  console.log(i); // kim park lee
}

2.文字列に書き込む場合

let str = 'apple';
for(let i of str){
  console.log(i); // a p p l e
}
出典:https://jsdev.kr/t/for-in-vs-for-of/2938