splice
- 배열에서 지정된 위치에 아이템을 삭제하거나 추가할 수 있다
splice 구성
splice(index, howmany, item, item ...)
index : 삭제/추가 발생할 인덱스
howmany : 삭제할 갯수
(0을 입력하면 삭제되지 않는다)
(index 위치부터 갯수만큼 삭제된다)
item : index 위치에 추가할 값
(추가할 값이 없을때는 생략 가능)
forEach
- 배열의 처음부터 끝까지 배열의 모든 값을 반복처리 한다
(배열의 저장된 모든 값을 소비할 때 사용하는 메소드)
forEach 구성
forEach(currentValue, index) {...}
currentValue : 배열의 현재 값을 전달받는다
index : 배열의 현재 인덱스 값을 전달받는다
예시
// 배열에 들어있는 값의 총 합계를 계산해서 출력하기
let numbers = [1, 3, 7, 9, 3, 9, 3, 6, 2];
int total = 0;
numbers.forEach(function(num) {
total += num;
});
console.log(total);
// total : 43
filter
- 배열의 값 중에서 테스트를 통과한 값만 모아서 새로운 배열로 반환한다
(배열에서 특정 조건을 만족하는 요소들만 선택하고 싶을 때 유용하게 사용할 수 있다)
filter 구성요소
filter(function (currentValue, index) {...})
currentValue : 현재 처리 중인 요소의 값
index : 현재 처리 중인 요소의 인덱스
예시
// 짝수만 찾아내기
let numbers = [1, 3, 7, 9, 3, 9, 3, 6, 2];
numbers.filter(function(num) {
if(num %2 == 0) {
return true;
} else {
return false;
}
})
console.log(evenNumbers) --> [2]
map
- 배열에 모든 값에 대해서 지정된 함수를 한번씩 실행하고 결과를 새로운 배열로 반환한다
(배열에 저장된 값을 다른 형태의 값으로 변환하고 싶을 때 사용하는 메소드)
map 구성요소
map(function(currentValue, index) { ... })
currentValue : 현재 처리중인 배열의 요소
index : 처리 중인 요소의 인덱스
예시
let numbers = [1, 2, 3, 4];
// 배열의 값에 10을 곱한 값을 획득하기
let arr = numbersmap(function(num) {
return num*10
})
console.log(arr) ---> [10, 20, 30, 40];
reduce
배열에 저장된 값을 하나의 값으로 집계하는 메소드
예시
let numbers = [10, 20, 30, 40]
let total = 0;
return result = numbers.reduce(function(total, num) {
return total + num;
})
console.log(result) // 100이 출력된다
function(total, num)은 배열의 값에 대해서 한번씩 실행된다
function(0, 10) --> 반환값은 10 ---> total도 10이 된다
function(10, 20) --> 반환값은 30 ---> total도 30
function(30, 30) --> 반환값은 60 ---> total도 60
join
배열의 모든 요소를 연결해서 하나의 문자열로 반환한다
예시
let arr = ["홍길동", "김유신", "강감찬"]
let text = arr.join();
// text ---> "홍길동,김유신,강감찬"
console.log(text);
let arr = ["홍길동", "김유신", "강감찬"]
let text = arr.join("-");
// text ---> "홍길동-김유신-강감찬"
배열에서 요소를 찾아내는 메소드
indexOf(값)
지정된 값이 배열에서 처음으로 등장하는 인덱스를 반환
존재하지 않으면 -1을 반환한다
예시
let arr = [10, 20, 30, 40, 30, 20, 10, 30, 10, 20, 40]
// index값은 2
let index = arr.indexOf(30);
// index 값은 7
lastIndexOf(값)
지정된 값이 배열에서 마지막으로 등장하는 인덱스를 반환한다
존재하지 않으면 -1을 반환
예시
let arr = [10, 20, 30, 40, 30]
// index값은 4
let index = arr.lastIndexOf(30);
find
함수는 배열의 모든 값에 대해서 한번씩 실행된다
true 또는 false 값을 반환하는데 true를 반환하는 첫번째 값이 find 메소드의 최종결과다
find(function(value, index){ ... })
예시
let arr = [40, 35, 69, 50, 80]
// 배열의 값 중에서 60보다 크거나 같은 값 중에서 처음으로 발견되는 값
//
let result = arr.find(function(num, index) {
return num >= 60;
}
findIndex
함수는 배열의 모든 값에 대해서 한번씩 실행된다
true 또는 false 값을 반환하는데 true를 반환하는 첫번째 값이 find 메소드의 최종결과다
findIndex(function(value, index){ ... })
예시
let arr = [40, 35, 69, 50, 80]
// 배열의 값 중에서 60보다 크거나 같은 값 중에서 처음으로 발견되는 값의 인덱스
// index 값은 2다
let result = arr.findIndex(function(num, index) {
return num >= 60;
}
기타
push(값)
배열의 끝에 값을 추가한다
unshift(값)
배열의 맨 앞에 값을 추가한다
원래 있던 값들을 전부 한칸씩 뒤로 이동한다
pop(값)
배열의 맨 마지막값을 삭제하고, 그 값을 반환한다
shift
배열의 맨 처음 값을 삭제하고, 그 값을 반환한다
두번째 있던 값들부터 전부 한칸씩 앞으로 이동한다
'JavaScript' 카테고리의 다른 글
JavaScript_Ajax, JSON (0) | 2024.01.18 |
---|---|
JavaScript_이벤트 버블링 (1) | 2024.01.17 |
JavaScript_DOM, BOM (1) | 2024.01.16 |
JavaScript_JavaScript 함수, 이벤트 (1) | 2024.01.15 |
JavaScript_JavaScript, 타입, 연산자 (0) | 2024.01.12 |