JavaScript - 배열 (Array)

크리스·2022년 12월 21일
0
post-thumbnail

배열 메소드

  • push() : 배열 끝에 요소를 삽입
  • pop() : 배열 끝에 요소를 삭제
  • unshift() : 배열 앞에 요소를 삽입
  • shift() : 배열 앞에 요소를 삭제
  • 배열.splice(n, m) : n번째 위치 요소부터 m개의 요소를 삭제하고 삭제한 요소를 반환
  • 배열.splice(n, m, x..) : n번째 위치 요소부터 m개의 요소를 삭제하고 x 요소들을 삽입하고 삭제한 요소를 반환
  • 배열.splice(n, 0, x..) : n번째 위치에 x 요소들을 삽입하고 삭제는 0이니까 없음 삭제된 요소가 없으니까 [ ] 반환
  • 배열.slice(n, m) : n번째 위치 요소부터 m까지 요소를 반환. m번째 위치의 요소는 포함되지 않는다. slice() 이렇게 괄호안에 아무것도 넣지 않으면 배열이 복사된다.
  • 배열.concat(arr1, arr2...) : 기존 배열에 인자로 들어오는 값들을 합쳐서 새로운 배열을 반환
  • 배열.forEach(function) : 함수를 인수로 받아 배열을 반복한다.
    이 함수는 세개의 매개변수를 받는데 첫번째는 해당 배열의 요소이고, 두번째는 인덱스, 세번째는 해당 배열을 의미한다.
  • 배열.indexOf(값) : 문자열의 indexOf()와 사용법이 같다. 값의 인덱스를 반환한다. 만약 배열에 입력되는 인자값이 없다면 -1을 반환. 첫번째 매개변수는 찾는 값을 넣고, 두번째 매개변수는 첫번째 매개변수의 값을 찾는 시작 인덱스 값을 넣는다.
  • 배열.lastindex(값) : 배열 끝에서부터 탐색하고 싶을때 사용하면 된다.
  • 배열.includes(값) : 값이 포함되는지는 알고싶으나 인덱스 값을 알고싶지 않다면 indexOf 를 사용하는것보다 includes를 사용하는것이 편리하다.
    값이 배열에 포함되어 있다면 true, 없다면 false를 반환한다.
  • 배열.find(function), 배열.findIndex(function) : indexOf처럼 찾는것은 같지만 함수를 인자값으로 넣어 보다 복잡한 연산을 할수 있다.
    첫번째 true 값만 반환하고 끝난다. 만약 없으면 undefined 를 반환
    findIndex는 인덱스값을 반환한다.
  • 배열.filter(function) : 조건에 만족하는 모든 요소를 배열로 반환한다.
  • 배열.reverse() : 배열의 요소들을 뒤집어서 반환한다.
  • 배열.map(function) : 함수를 받아 특정 기능을 시행하고 새로운 배열을 반환한다.
  • 배열.join() : 배열을 합쳐서 문자열을 만들어 반환한다. 괄호안에 아무것도 넣지 않는다면 각각의 요소마다 ,을 삽입해 합쳐서 반환하고 어떤 문자열을 넣는다면 각각의 요소마다 입력한 문자열을 삽입해 반환한다.
  • 문자열.split() : 문자열을 괄호안의 문자열을 기준으로 나눠서 배열로 반환 해준다. "" 빈문자를 괄호 안에 넣으면 각각을 모두 나눠 배열로 반환
  • Array.isArray(배열) : 배열인지 아닌지 확인 하는 방법이다. 배열은 타입이 배열이기 때문에 typeof를 사용해서는 배열인지 알 수 없다.
  • 배열.sort() : 배열을 정렬해준다. 배열 자체가 변경된다. 배열의 요소가 문자열이라면 오름차순으로 정렬된다. 배열의 요소가 숫자여도 문자열로 변환되어 오름차순으로 정렬해 반환하는데 이렇게 되면 우리가 원하는 정렬된 배열을 얻을수 없다. 인수로 정렬 로직을 담은 함수를 받아서 정렬해야 숫자를 원하는 배열 방식으로 정렬해 반환 받을수 있다.
  • 배열.reduce() : 인수로 함수를 받아 원하는 작업을 하고 최종값을 반환하는 함수이다. (누적 계산값, 현재값) => { return 계산값}; 이런식으로 함수를 만들어 인수로 넣어준다.
let arr = [1,2,3,4,5,6,7,8,9];

const result8 = arr.reduce((m,now) => {
    return m+now;
},초기값)  

console.log(result8);

배열의 값을 모두 더하는 로직이다. 초기값 위치에는 적지 않을수 있는데 적지 않는다면 자동적으로 초기값 m은 0이 된다. 값을 넣어준다면 m에 그 값이 들어간다.

profile
재밌는건 다 합니다.

0개의 댓글