[D+87]드림코딩by엘리

ga_ding·2022년 3월 6일
0

TIL

목록 보기
26/55

배열함수quiz

  class Student {
    constructor(name, age, enrolled, score) {
      this.name = name;
      this.age = age;
      this.enrolled = enrolled;
      this.score = score;
    }
  }
  const students = [
    new Student('A', 29, true, 45),
    new Student('B', 28, false, 80),
    new Student('C', 30, true, 90),
    new Student('D', 40, false, 66),
    new Student('E', 18, true, 88),
  ];
  
  // Q5. find a student with the score 90
  >>find를 찾으면 거기서 반복문 바로 멈춤!
  {
      const result = student.find((student) => student.score === 90);
      console.log(result);
  }
  
  // Q6. make an array of enrolled students
  {
      const result = students.filter((student) => student.enrolled);
      console.log(result);
  }
  
  // Q7. make an array containing only the students' scores
  // result should be: [45, 80, 90, 66, 88]
  {
      const result = students.map((student) => student.score);
      console.log(result);
  }
  
  // Q8. check if there is a student with the score lower than 50
  >>some은 조건에서 한명이라도 맞는 사람이 있다면 true 출력
    every는 모두 조건이 맞아야함
  {
      const result = students.some((student) => student.score < 50);
      consolee.log(result)
  }
  
  // Q9. compute students' average score
  >> reduce 는 배열 하나하나를 돌면서 값을 누적하는 것
  ( ,0)은 0부터 시작해서 a b c d 차례로 누적됨
  {
        const result = student.reduce((prev, curr) => prev + curr.score, 0);
        console.log(result / students.length);
  }
  
  // Q10. make a string containing all the scores
  // result should be: '45, 80, 90, 66, 88'
  {
      const result = students.map((student) => student.score).join();
      console.log(result);
  }
  
  // Bonus! do Q10 sorted in ascending order
  // result should be: '45, 66, 80, 88, 90'
  {
      const result = students.map((student) => student.score)
      .sort((a,b) => a-b)
      .join()
      console.log(result)
  }

여기서 백준 문풀때 알 수 없던 문법을 익힐 수 있었다.
map의 경우 이해를 전혀 하지 못했었는데 배열이 map을 이욯해서 또 배열로 만들어주는 문법이었다.

흐엉 내일부터 당장 부트캠프 시작인뎅.. 이대로 시작해도 과연 잘 할 수 있을까...

profile
大器晩成

0개의 댓글