250x250
Rainbow🌈Coder
My dev Note📒
Rainbow🌈Coder
전체 방문자
오늘
어제
  • 분류 전체보기 (411)
    • 공지사항 (0)
    • Debugger (10)
      • Visual Studio Debugger (1)
      • Chrome DevTools (3)
      • Visual Studio Code Debugger (4)
      • eclipse (1)
      • intelliJ (1)
    • OOP (2)
      • OOP (2)
    • TypeScript (54)
      • 타입스크립트 TypeScript (54)
    • Javascript (87)
      • Javascript (45)
      • Node.js (19)
      • React (5)
      • FE 개발환경설정 (3)
      • React와 Node 같이 때려잡기 (6)
      • next.js (2)
      • pixi.js (7)
    • 마크업 (23)
      • Html & Css (23)
    • C# (80)
      • C# (12)
      • 이것이 C#이다 (68)
    • C++ (30)
      • c++ (27)
      • win api (3)
    • Unity (18)
      • Unity(기초) (8)
      • Unity(C#중급) (5)
      • 유니티 포톤(네트워크) (4)
      • unity c# MyCode (1)
    • Java & Spring (29)
      • Java (11)
      • 스프링 (8)
      • Java Algorithm (9)
      • Javs Data Structures (1)
    • 자료구조와 알고리즘 (15)
      • 자료구조 (5)
      • 알고리즘 (10)
    • 형상관리 (15)
      • Git (11)
      • 소스트리 (3)
    • 그래픽스 (7)
      • WebGl (7)
    • AWS (3)
      • aws (3)
    • 리눅스 (5)
      • 리눅스 (5)
    • 책 리뷰 (13)
      • 클린코드(책리뷰) (3)
      • 유지보수가능한코딩의기술C#편(책리뷰) (1)
      • 리팩토링(자바스크립트판) (9)
    • Server (2)
      • 게임 서버(네트워크, 멀티쓰레드,OS) (2)
    • 설계, 아키텍쳐 (4)
    • 파이썬 (5)
    • 디자인패턴 (2)
    • mocha (2)
    • Jest (1)
    • Spine (1)
    • 인공지능 (1)
      • 혼자공부하는머신러닝+딥러닝 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 위임
  • MySQL
  • ㅣㄷ
  • 컴포지션

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Rainbow🌈Coder

My dev Note📒

Javascript/Javascript

[자바스크립트] for문과 foreach 실전 예제 비교

2022. 4. 30. 14:31
728x90

for문

let tabs = document.querySelectorAll(".task-tabs div");

for (let i = 1; i < tabs.length; i++) {
  tabs[i].addEventListener("click", function (event) {
    filter(event);
  });
}

foreach문

let menus = document.querySelectorAll(".menus button");

menus.forEach((menu) =>
  menu.addEventListener("click", (event) => getNewsByTopic(event))
);

const getNewsByTopic = (event) => {
  console.log("클림됨", event.target);
};

 

분석

 

let tabs = document.querySelectorAll(".task-tabs div");

for (let i = 1; i < tabs.length; i++) {
  tabs[i].addEventListener("click", function (event) {filter(event);});
}

 

let menus = document.querySelectorAll(".menus button");

menus.forEach((menu) =>
  menu.addEventListener("click", (event) => getNewsByTopic(event))
);

원본

let tabs = document.querySelectorAll(".task-tabs div");

for (let i = 1; i < tabs.length; i++) {
  tabs[i].addEventListener("click", function (event) {
    filter(event);
  });
}

function filter(event) {
  mode = event.target.id;
  filterList = [];
  console.log("filter 클림됨!", event.target.id);
  if (mode == "all") {
    render();
  } else if (mode == "ongoing") {
    for (let i = 0; i < taskList.length; i++) {
      if (taskList[i].isCompleted == false) {
        filterList.push(taskList[i]);
      }
    }
    render();
  } else if (mode == "done") {
    for (let i = 0; i < taskList.length; i++) {
      if (taskList[i].isCompleted == true) {
        filterList.push(taskList[i]);
      }
    }
    render();
  }
}

 

 

'

let menus = document.querySelectorAll(".menus button");

menus.forEach((menu) =>
  menu.addEventListener("click", (event) => getNewsByTopic(event))
);

const getNewsByTopic = (event) => {
  console.log("클림됨", event.target);
};

const getNewsByTopic = async (event) => {
  //console.log("클림됨", event.target.textContent);
  let topic = event.target.textContent.toLowerCase();
  let url = new URL(
    `https://api.newscatcherapi.com/v2/latest_headlines?countries=KR&topic=${topic}&page_size=5`
  );
  //console.log("uuu", url);
  let header = new Headers({
    "x-api-key": "mq7AfahUuQLPwY4_WhXjc9YCjgQKkKz6KhZvMbEDthE",
  });
  let response = await fetch(url, { headers: header });
  let data = await response.json();
  news = data.articles;
  render();
  //console.log("토픽뉴스 데이터", data);
};
728x90

'Javascript > Javascript' 카테고리의 다른 글

[자바스크립트] how to set query in url javascript  (0) 2022.05.06
자바스크립트 라이브러리 목록  (0) 2022.05.03
[자바스크립트] Array.from( {length} 구문에서 {length}은 유사배열?  (0) 2022.04.27
[자바스크립트] 자료구조 큐,스택, 트리 구현  (0) 2022.04.25
[자바스크립트] web api 불러오기  (0) 2022.04.24
    'Javascript/Javascript' 카테고리의 다른 글
    • [자바스크립트] how to set query in url javascript
    • 자바스크립트 라이브러리 목록
    • [자바스크립트] Array.from( {length} 구문에서 {length}은 유사배열?
    • [자바스크립트] 자료구조 큐,스택, 트리 구현
    Rainbow🌈Coder
    Rainbow🌈Coder
    몰라도 결국은 아는 개발자, 그런 사람이 되기 위한 매일의 한걸음

    티스토리툴바