본문 바로가기

Today`s Study

22.04.05 화

야구장 알바 끝나고 쓴다면서 다음날에 쓰고 있습니다. 하하..

 

야구가 늦게 끝나서 10시 반에 도착하고 쉬다가 잠들어버려서 지금에서야 작성합니다.

 

야구장 알바를 가기 전에 강의 하나를 듣고 갔습니다.

배열 내장 함수라는 챕터의 강의를 들었는데 간단히 정리해보겠습니다.

forEach는 배열을 순서대로 순회하는 메서드

const arr = [1, 2, 3, 4];
arr.forEach((elm) => console.log(elm));

//함수 선언문으로 나타내면..

arr.forEach(function (elm) {
  console.log(elm);
});

 

map도 순회하지만 새로운 배열을 생성하는 메서드

const arr = [1, 2, 3, 4,];
const newArr = arr.map((elm) => { 
  return elm * 2;
});

 

includes는 배열 내 요소가 있는지 true, false로 알려주는 메서드

const arr = [ 1, 2, 3, 4];
let number = 3;
console.log(arr.includes(number)); // true

 

indexOf는 전달받은 요소의 인덱스를 출력하는 메서드, 요소가 없으면 -1 출력

const arr = [1, 2, 3, 4];
let number = "3"
console.log(arr.indexOf(number)); // -1

 

findIndex는 객체에서 조건에 만족하는 요소의 인덱스를 출력하는 메서드

const arr = [
  {color: "red"},
  {color: "black"},
  {color: "blue"},
  {color: "green"}
];

console.log(arr.findIndex((elm) => elm.color === "red")); // 0

 

find는 배열 내 요소를 완전히 가저오는 메서드

const arr = [
  {color: "red"},
  {color: "black"},
  {color: "blue"},
  {color: "green"}
];

const element = arr.find ((elm) => {
   return elm.color === "blue";
   });

console.log(element); // {color: "blue"}

 

filter는 배열을 필터링하는 메서드

const arr = [
  {num:1, color: "red"},
  {num:2, color: "black"},
  {num:3, color: "blue"},
  {num:4, color: "green"},
  {num:5, color: "blue"},
];

console.log(arr.filter((elm) => elm.color === "blue"));
// {  {num:3, color: "blue"},  {num:5, color: "blue"} }

 

slice는 배열을 잘라내는 메서드

const arr = [
  {num:1, color: "red"},
  {num:2, color: "black"},
  {num:3, color: "blue"},
  {num:4, color: "green"},
  {num:5, color: "blue"},
];

console.log(arr.slice(0,2))
// {{num:1, color: "red"}, {num:2, color: "black"}}
// 0부터 2까지 잘랐는데 2개만 나온다.
// 이를 살펴보면 slice(begin, end)라고 하는데
//begin과 end는 인덱스 값이며 end에서 1을 뺀 값까지 출력

//slice는 filter와 map과 같이 새로운 배열로 반환한다.

 

concat은 두 개의 배열을 하나로 합치는 메서드

const arr1 = [
  {num:1, color: "red"},
  {num:2, color: "black"},
  {num:3, color: "blue"}
]
const arr2 = [ 
  {num:4, color: "green"},
  {num:5, color: "blue"},
];

console.log(arr1.concat(arr2));

 

sort는 사전순으로 배열을 정렬

let chars = ["나", "다", "가"]
chars.sort();
console.log(chars);

// 하지만 숫자열은 안된다. sort는 문자열 기준이기 때문
// 그래서 비교함수를 만들어주어야 한다.

const ompare = (a, b) => {
   // 이때 같을 때, 작을 때, 클 때 조건을 넣는다.
   
  if(a>b){return 1 //크다 }
  
  if(a < b) {return -1 //작다 }
  
  return 0  // 같다}
  
number.sort(compare);
console.log(num); // 0, 1, 2, 10

숫자열을 비교하는 함수의 원리는 return 1의 의미가 a가 b보다 뒤에 있어야 한다, return -1은 작은 값이 앞으로 가기 때문에 a가 b보다 앞에 있다,  return 0 은 같기 때문에 자리를 바꾸지 않는다.

그래서 최종적으로 숫자열이 순서대로 맞춰지게 된다.

이것을 반대로하면 내림차순으로 가능하다.

 

join 배열의 모든 요소를 문자열로 합치는 메서드

console.log(arr.join()); // 이정환,님,안녕하세요,또 오셨군요

요소를 구분하기 위해 쉼표를 사용한다.

쉼표가 싫다면 join의 괄호 안에 " "띄어쓰기(공백)을 넣어주면 쉼표 대신 띄어쓰기가 들어간다.

즉 join안에 들어가는 것은 '구분자'이다.

 

 

여기까지 배워보았습니다

728x90

'Today`s Study' 카테고리의 다른 글

22.04.07 목  (0) 2022.04.08
22.04.06 수  (0) 2022.04.07
22.04.04 월  (0) 2022.04.05
22.03.22 화  (0) 2022.03.22
22.03.21 월  (0) 2022.03.21