JS_배열 함수 7종 세트

dev.dave·2023년 7월 25일

Javascript

목록 보기
46/167

//배열함수 모음 (array func)

  const fruits = [
    "apple",
    "banana",
    "orange",
    "kiwi",
    "mango",
    "grape",
    "dragonfruite",
    "tangerin",
  ];

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

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //forEach 문>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 포이치는 그냥 스트링임
  //함수를 매개변수로 넣어준다. 익명함수는 메모리 차지안하고 종료되면 사라짐 익명함수 추천~
  //const result = fruits.forEach((fruit) => console.log(fruit));

  //const result = fruits.forEach((fruit, index) => { //이렇게 변수로 저장 할 필요 없음 어차피 반환값이 없다.
  fruits.forEach((fruit, index) => {
    //console.log(fruit, index) //이렇게 여기안에서 처리해서 값을 뽑는거임.
    //fruit, index;
  }); //친절하게 인덱싱도 해줌.
  //console.log(result); // 언디파인드 나옴 forEach 는 반환 값이 없다.

  //아니면 옛날방식도 있고,,,
  //   function print(items) {
  //     console.log(items);
  //   }

  //  const result = fruits.forEach(print);

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //map>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>맵은반환값이 있다(return을 꼭 명시) 배열로 뽑을 수 있다.
  //map은 원래 배열은 건들지 않고, 완전히 새로운 배열을 만듬.
  //   const result = fruits.map((item) => {
  //     return item;
  //    return item * 2;
  //   });
  //   console.log(result); // map 은 배열로 꺼내진다.
  //맵은 꼭 리턴을 해줘야 된다. 단독으로 쓸때는~!

  ///////////////////////////////////////////////////////////////////////////////////////////////

  class Student {
    constructor(name, age, enrolled, score) {
      this.name = name;
      this.age = age;
      this.enrolled = enrolled;
      this.score = score;
    }
  }

  const students = [
    new Student("Aaa", 29, true, 45),
    new Student("Bbb", 28, false, 80),
    new Student("Ccc", 30, true, 90),
    new Student("Ddd", 40, false, 66),
    new Student("Eee", 18, true, 88),
  ];

  //filter  필터 // 필터는 배열이다. 배열을 리턴함 즉, 여러값을 리턴함.
  //filter는 원래 값을 변조하지 않고, 새로운 배열을 만들어낸다.
  //map이랑 비슷한 filter 가 있다.
  // 필터는 조건을 줘서 트루인 답만 뽑을 수 있다. 리턴은 입력해야함.
  //const result = students.filter((item) => {
  //return item.age === 30;
  //return item.name.startsWith("D");
  //return item.score >= 50;
  //이렇게 조건을 줄 수 있다.
  //});
  // console.log(result);

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //some 은 불리언 값으로 리턴됨. 있냐 없냐 를 물을떄.
  //   const result = students.some((item) => {
  //     return item.name.startsWith("D");
  //   });
  //   console.log(result);

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //every 는 모두의 이름이 D로 시작하냐? 이런 모두의 불리언값을 뽑을때, 모두가 그 값이냐?
  //   const result = students.every((item) => {
  //     return item.name.startsWith("D");
  //   });
  //   console.log(result);

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //find //find 는 단 하나의 값만 찾아줌.

  //   const result = students.find((item) => {
  //     return item.name.startsWith("D");
  //    return item.name === "Ddd";
  //   });
  //   console.log(result);

  ///////////////////////////////////////////////////////////////////////////////////////////////

  //findIndex //findIndex 는 그냥 인덱스 번호를 찾아줌.

  //   const result = students.findIndex((item) => {
  //     return item.name.startsWith("D");
  //   });
  //   console.log(result);
profile
🔥개인 메모 / 다른블로그 자료 참조 / 다른블로그 자료 퍼옴 (출처표기) /여기저기서 공부 했던 내용 개인메모 & 참고 / 개인 기록 용도 블로그 입니다.🔥

0개의 댓글