Post

forEach

배열은 반복문을 돌려서 접근할 수도 있지만, forEach로 접근할 수도 있다.

 

(0) for 반복문으로 배열순회

const animals = ["lion", "dog", "cat", "fox"];
for (let i = 0; i < animals.length; i++) {
  console.log(animals[i]);
}
// lion
// dog
// cat
// fox

 

 

 

(1) for Each 배열순회

const animals = ["lion", "dog", "cat", "fox"];
animals.forEach(function (item) {
  console.log(item);
});
// lion
// dog
// cat
// fox

item을 그대로 쓰면 배열 전체를 순회하며 콘솔에 값을 적어준다.

 

 

 

(2) for Each 오브젝트 배열순회

const animals = [
  { name: "lion", size: "big" },
  { name: "dog", size: "middle" },
  { name: "cat", size: "small" },
  { name: "fox", size: "small" },
];
animals.forEach(function (item) {
  console.log(item);
});
// { name: 'lion', size: 'big' }
// { name: 'dog', size: 'middle' }
// { name: 'cat', size: 'small' }
// { name: 'fox', size: 'small' }

오프젝트로 구성된 배열 역시 순회하면서 모든 값을 콘솔에 적어준다.

 

 

 

(3) for Each 오브젝트 배열의 일부요소만 추출

const animals = [
  { name: "lion", size: "big" },
  { name: "dog", size: "middle" },
  { name: "cat", size: "small" },
  { name: "fox", size: "small" },
];
animals.forEach(function (item) {
  console.log(item.name);
});
// lion
// dog
// cat
// fox

 

 

 

(4) for Each 두개 이상을 추출

const animals = [
  { name: "lion", size: "big" },
  { name: "dog", size: "middle" },
  { name: "cat", size: "small" },
  { name: "fox", size: "small" },
];
animals.forEach(function (item) {
  console.log(item.name, "의 크기는", item.size);
});
// lion 의 크기는 big
// dog 의 크기는 middle
// cat 의 크기는 small
// fox 의 크기는 small

 

 

 

(5) 두번째 매개변수는 순서를 표시한다

const animals = [
  { name: "lion", size: "big" },
  { name: "dog", size: "middle" },
  { name: "cat", size: "small" },
  { name: "fox", size: "small" },
];
animals.forEach(function (item, idx) {
  console.log(idx, item.name, "의 크기는", item.size);
});
// 0 lion 의 크기는 big
// 1 dog 의 크기는 middle
// 2 cat 의 크기는 small
// 3 fox 의 크기는 small

 

 

 

'JavaScript related' 카테고리의 다른 글

JavaScript How to add JSON to localStorage  (0) 2023.01.26
JavaScript addEventListener("keyup")  (1) 2023.01.26
JavaScript Promise  (0) 2023.01.25
JavaScript Async Function  (0) 2023.01.25
JavaScript deep & shallow copy  (0) 2023.01.25
▲ top