indexOf
- 특정 문자 위치 찾기
- 문법 : arr.indexOf(인덱스 찾고 싶은 문자, 검색을 시작할 인덱스)
- 반환값 : 존재하는 위치인덱스 값, 존재하지 않으면 -1을 반환
- 배열과 문자열 모두 사용가능
- 특정문자의 제일 앞 위치를 알려줌
- num번째 이후의 특정문자 위치를 알려줌
- 정규표현식 사용 불가
s.indexOf('특정문자') : 특정문자의 제일 앞 위치를 알려줌
s.indexOf('특정문자', num) : num번째 이후의 특정문자 위치를 알려줌
ex)
let arr = ['만두', '만듀', '만쥬', '만듀']
arr.indexOf('만듀')
arr.indexOf('민주')
let text = "hi hello"
text.indexOf('h')
text.indexOf('h',1)
push
- 배열 끝에 요소를 추가함, 여러 개 추가도 가능
- 문법 : arr.push(배열 끝에 추가하고 싶은 요소들)
- 반환값 : 변경된 배열의 크기
- 원본 배열을 변경
let arr = [1,2,3,4]
arr.push(5,6)
console.log(...arr)
pop
- 배열에서 마지막 요소를 제거
- 반환값 : 제거된 요소를 반환
- 원본 배열을 변경
let arr = [1,2,3,4,5]
arr.pop()
console.log(...arr)
unshift
- 배열 앞에 요소를 추가함, 여러 개 추가도 가능
- 문법 : arr.unshift(배열 앞에 추가하고 싶은 요소들)
- 반환값 : 변경된 배열의 크기
- 원본 배열을 변경
let arr = [1,2,3,4]
arr.unshift(10,20)
console.log(...arr)
shift
- 배열에서 첫 번째 요소를 제거
- 반환값 : 제거된 요소를 반환
- 원본 배열을 변경
let arr = [1,2,3,4]
arr.shift()
console.log(...arr)
concat
- 배열 끝에 요소나 배열을 추가
- 문법 : arr.concat(배열 끝에 추가하고 싶은 요소들 또는 배열)
- 반환값 : 요소나 배열을 추가해 만들어진 새로운 배열을 반환
- 원본 배열은 변경되지 않음
let a = ['만두', '만듀', '만쥬']
let b = ['민주', '강민주']
a.concat(b)
console.log(a)
splice
- 배열에 지정한 부분을 없애고 원하는 값을 넣음
- 문법 : arr.splice(요소 제거하기 시작할 인덱스, 제거할 요소 개수, 제거한 위치에 삽입할 요소들)
- 반환값 : 삭제되는 요소들을 반환함
- 원본 배열을 변경
arr.splice(start, deleteCount, item1, item2, ...)
let arr = [10,20,30];
arr.splice(1,0,100);
console.log(...arr);
let arr = [10,20,30];
arr.splice(1,1,100,200);
console.log(...arr);
let arr = [10,20,30,40];
let x = [1,2,3];
arr.splice(1,0,...x);
arr.splice(7,0,...x);
arr.push(100);
let arr = [10,20,30,40];
arr.splice(1);
arr.splice(1, 2);
slice
- 구간 안의 요소들을 복사해 새로운 배열로 변환함
- 문법 : arr.slice(복사 시작할 인덱스, 복사 종료할 인덱스)
- 반환값 : 복사된 새로운 배열이 반환
- 원본 배열은 변경되지 않음
- 인덱스를 음수로도 전달할 수 있음( 뒤에서 몇번째를 의미 )
const arr = [1, 2, 3, 4];
arr.slice(1, 2);
arr.slice(1, 3);
arr.slice(1);
arr.slice(-1);
arr.slice(-2);
join
- 배열의 모든 요소를 구분자로 연결한 문자열을 만듬
- 반환값 : 만들어진 문자열을 반환
let arr = ['hello', 'world', 'minju']
arr.join('!')
let arr = ['010', '1234', '5678']
arr.join('-')
reverse
- 배열 안 요소들을 뒤집음
- 반환값 : 뒤집어진 배열을 반환함
- 원본 배열을 변경
let arr = [1, 2, 3]
arr.reverse()
fill
- 인수로 전달받은 값을 배열의 처음부터 끝까지 요소로 채움
- 문법 : arr.fill(요소, 요소 채우기를 시작할 인덱스, 요소 채우기를 멈출 인덱스)
- 반환값 : 변환되는 배열을 반환함
- 원본 배열을 변경
- 모든 요소를 하나의 값만으로 채움
let arr = [1,2,3,4,5,6,7,8,9]
arr.fill(1)
arr.fill(0,3,5)
let arr = Array(5).fill(0)
console.log(arr)
includes
- 배열 내에 특정 요소가 포함되어 있는지 확인
- 문법 : arr.includes(특정요소, 시작할 인덱스)
- 반환값 : 포함되어 있으면 true 없으면 false를 반환
let arr = [1, 2, 3, 1]
arr.includes(1);
arr.includes(2,2);
flat
- 인수로 전달한 깊이만큼 배열을 평탄화함
- 반환값 : 평탄화된 배열을 반환함
- 요소를 생략할 시 기본값은 1
- 요소에 infinity를 전달하면 완전하게 평탄화됨
[1, [2, 3, 4]].flat();
[1, [2, [3, [4]]]].flat();
[1, [2, [3, [4]]]].flat(2);
[1, [2, [3, [4]]]].flat(Infinity);