728x90
1) Array.indexOf
원본 배열에서 인수로 전달된 요소를 검색하여 인덱스 반환
- 원본 배열에 인수로 전달한 요소와 중복되는 요소가 있으면 첫 번째로 검색된 요소의 인덱스 반환
- 원본 배열에 인수로 전달한 요소가 존재하지 않으면 -1 반환
const arr = [1,2,2,3]
arr.indexOf(2) // 1 반환
arr.indexOf(4) // -1 반환
arr.indexOf(2, 2)// 두번째 인수는 검색을 시작할 인덱스, 그러므로 2 반환
2) Array.push
인수로 전달받은 값을 원본 배열의 마지막 요소로 추가
const arr = [1,2,3,4,5]
arr.push(6) // [1,2,3,4,5,6]
※ push 메서드는 원본 배열을 직접 변경한다. 원본배열을 변경하고 싶지 않다면 spread 문법을 사용하자
const arr = [1,2]
const newArr = [...arr, 3] // [1,2,3]
3) Array.pop
원본 배열의 마지막 요소 제거
const arr = [1,2,3,4,5]
arr.pop() // [1,2,3,4]
4) Array.unshift
인수로 전달받은 값을 원본 배열의 맨 앞 요소로 추가
const arr = [1,2,3,4,5]
arr.unshift(6) // [6,1,2,3,4,5]
※ unshift 메서드는 원본 배열을 직접 변경한다. 원본배열을 변경하고 싶지 않다면 spread 문법을 사용하자
const arr = [1,2]
const newArr = [3, ...arr] // [3,1,2]
5) Array.shift
원본 배열의 맨 앞 요소 제거
const arr = [1,2,3,4,5]
arr.shift() // [2,3,4,5]
6) Array.splice
원본 배열의 중간에 요소를 추가하거나 중간에 있는 요소를 제거할 때 사용
3개의 매개변수가 있다.
- start : 원본 배열의 요소를 제거하기 시작할 인덱스, start만 지정할 시 원본 배열의 start부터 모든 요소 제거 음수인 경우 배열의 끝에서의 인덱스를 나타냄,(-1이면 마지막 요소, -n이면 마지막에서 n번째 요소)
- deleteCount : 원본 배열의 요소를 제거하기 시작할 인덱스인 start부터 제거할 요소의 개수
- items : 제거한 위치에 삽입할 요소들의 목록
const arr = [1,2,3,4]
// splice(start) : start부터 모두 지움
arr.splice(1) // [1]
// splice(start, deleteCount) : start부터 deleteCount수 만큼 지움
arr.splice(2, 1) // [1,2,4]
// splice(start, deleteCount, items) : start부터 deleteCount개의 요소를 제거하고
// 그 자리에 새로운 items 요소를 삽입
arr.splice(1,2,20,30) // [1,20,30,4]
arr.splice(1,0,100) //[1,100,2,3,4]
7) Array.slice
인수로 전달된 범위의 요소들을 복사하여 배열로 반환 (원본 배열 변경 X)
2개의 매개변수를 갖는다
- start : 복사를 시작할 인덱스(음수면 배열의 끝에서의 인덱스)
- end : 복사를 종료할 인덱스, 이 인덱스에 해당하는 요소는 복사안됨, 생략가능, 생략시 기본값을 length 프로퍼티 값
const arr = [1,2,3]
arr.slice(0,1) //[1]
arr.slice(1,2) // [2]
arr.slice(1) // [2,3]
arr.slice(-1) // [3]
arr.slice(-2) // [2,3]
8) Array.join
원본 배열의 모든 요소를 문자열로 변환 후, 인수로 전달받은 구분자로 연결한 문자열 반환
const arr = ['a','b','c','d']
arr.join() // a,b,c,d
arr.join('') // abcd
arr.join(':') // a:b:c:d
9) Array.reverse
원본 배열의 순서를 반대로 뒤집는다. (원본 배열 변경됨)
const arr = [1,2,3]
arr.reverse() // [3,2,1]
10) Array.fill
인수로 전달받은 값을 배열의 처음부터 끝까지 요소로 채운다(원본 배열 변경됨)
const arr = [1,2,3]
arr.fill(0) // [0,0,0]
arr.fill(0,1) // [1,0,0]
11) Array.includes
배열내에 특정 요소가 포함되어 있는지 확인하여 true or false 로 반환
const arr = [1,2,3]
arr.includes(2) // true
arr.includes(100) // false
Reference
모던 자바스크립트 Deep Dive
모던 자바스크립트 Deep Dive | 이웅모 - 교보문고
모던 자바스크립트 Deep Dive | 269개의 그림과 원리를 파헤치는 설명으로 ‘자바스크립트의 기본 개념과 동작 원리’를 이해하자!웹페이지의 단순한 보조 기능을 처리하기 위한 제한적인 용도로
product.kyobobook.co.kr
728x90
'Study > Javascript' 카테고리의 다른 글
| [JS] 자바스크립트의 this (0) | 2024.08.07 |
|---|---|
| [JS] 배열에서 사용하는 메서드 (2) (0) | 2024.08.05 |
| [새싹x코딩온] 웹 개발자 부트캠프 과정 4주차 회고 | 자바스크립트 Date 객체를 이용해서 시계와 달력을 만들어보기 (1) | 2024.06.04 |
| [새싹x코딩온] 웹 개발자 부트캠프 과정 3주차 회고 | 어떤 반복문을 쓰는게 좋을까? (for, for of, forEach) (1) | 2024.06.03 |
| [새싹x코딩온] 웹 개발자 부트캠프 과정 3주차 회고 | 자바스크립트의 호이스팅(Hoisting) (1) | 2024.05.30 |