Array의 필수 메서드(2)

Kingmo·2022년 4월 3일
0

forEach

  • forEach : map, for과 비슷한 기능을 하며, 주어진 함수를 배열의 각 요소에 실행시킨다.
    다만, map과는 다르게 forEach는 배열을 리턴하지 않고 undefined를 리턴합니다.
    • forEach는 순회하는 도중에 멈출 수 없으나 배열을 순회하는 속도가 빠르다.
    • 따라서 새로운 배열을 return받는 경우가 아니라면 forEach를 사용하는 것이 효율이 좋다.
/* forEach의 사용방법 */
arr.forEch(()=>{
		// 각 배열의 원소에 반복하고싶은 코드
})
// forEach의 예제
let arr = [1,2,3,4,5,6]
arr.forEach((item)=>{return console.log(item*2)})

// > 결과 <
2
4
6
8
10
12
undefined

indexOf

  • indexOf : 배열에 특정 원소가 있는지 탐색하고 찾은 첫번째 요소의 인덱스를 반환한다.
    만일 존재하지 않으면 -1을 반환한다.
/* indexOf의 사용법 */
arr.indexOf("탐색하고싶은 요소",탐색을 시작할 위치=인덱스)
// indexOf의 예제
let name = ["a","b","c","d","e","c"]
name.indexOf("c")
// > 결과 <
2


// 배열의 마지막에 있는 "c"을 데리고 오고싶을 때
// 탐색을 시작할 위치를 지정해주시면 됩니다.
name.indexOf("c",3)
// > 결과 <
5

lastIndexOf

  • lastIndexOf : indexOf와 다르게 배열에서 찾은 마지막 요소의 인덱스를 반환한다.
    indexOf와 같은 기능이지만 인덱스 반환만 뒤에서 부터 해준다.
    • 쉽게 배열을 뒤집에서 indexOf를 실행한다고 보면된다.
// lastIndexOf의 예제
let name = ["a","b","c","d","b","e"]
name.lastIndexOf("b")
// > 결과 <
4

// 탐색을 시작할 위치 지정해보기 예제
name.lastIndexOf("b",3)
// > 결과 <
1

includes

  • includes : 배열이 특정 요소를 포함하고 있는지 판별하고 있으면 true 없으면 false를 반환한다.
    • includes의 탐색위치를 지정하게되면, 해당 인덱스를 포함해서 탐색을 시작한다.
/* includes의 사용방법 */
arr.includes("탐색하고싶은 요소",탐색을 시작할 위치)
//includes의 예제
let name = ["a","b","c","d","e","f"]
name.includes("c")
// > 결과 <
true

//includes의 예제 _ 탐색위치 지정하기
name.includes("c", 3)
// > 결과 <
false

find

  • find : 주어진 판별함수를 만족하는 배열의 첫번째 요소의 값을 반환해주는 메서드이다.
    • 만족하는 요소가 없다면 undefined를 반환한다.
/* find의 사용방법 */
arr.find(()=>{
		// 판별함수
})
// find 예제
let arr = [1,2,3,4,5,6,7]
arr.find((item)=>{
		return item > 4
})
// > 결과 <
5

findIndex

  • findIndex : 주어진 판별함수를 만족하는 배열의 첫번째 요소의 인덱스를 반환해준다.
    • find와 같은 기능이지만, 반환해주는 값이 다르다.(인덱스를 반환한다)
/* findIndex의 사용방법 */
arr.findIndex(()=>{
		// 판별함수
})
// findIndex의 예제
let arr = [1,2,3,4,5,6,7]
arr.findIndex((item)=>{
		return item > 4
})

// > 결과 <
// 5가 위치한 인덱스 반환)
4

filter

  • filter : 주어진 함수를 만족하는 모든 요소를 모아 새로운 배열로 반환한다.
    • 일정한 기준에 부합하는 원소들만 추출하고 싶을 때 많이 사용한다.
/* filter의 사용방법 */
arr.filter(()=>{
		// 일정한 기준을 줄 함수
})
// filter 예제
let arr = [1,2,3,4,5,6,7,8]
arr.filter((item)=>{
		return item > 3
})
// > 결과 <
[4,5,6,7,8]

some

  • some : 배열 안의 모든 원소 중에 하나라도 판별함수를 만족하는지 테스트해주는 메서드이다.
    만족하는 원소가 있다면 true, 없다면 false를 반환한다.
/* some의 사용방방법 */
const 콜백함수 = (arr_item)=>{판별하고싶은 것}
arr.some(콜백함수)
  • 예제
// some의 예제
const array = [1,2,3,4,5,6,7,8]
const elFunc = (item)=>{return item%2===0}
console.log(array.some(elFunc))
// > 결과 <
true

every

  • every : 배열 안의 모든 원소가 주어진 판별함수를 통과하는지 테스트하며, Boolean을 반환한다.
/* every의 사용방법 */
const 콜백함수 = (arr_item)=>{판별하고싶은 것}
arr.every(콜백함수)
  • 예제
// every의 예제
const array = [2,4,6,8]
const elFunc = (item)=>{return item%2===o}
console.log(array.every(elFunc))
// > 결과 <
true

fill

  • fill : 배열의 시작 인덱스부터 끝 인덱스의 이전까지 하나의 값을 채워준다.
    • 끝 인덱스는 포함하지 않는다.
/* fill의 사용방법 */
arr.fill(채울원소, 시작인덱스,끝인덱스)
// fill의 예제
let fillArray = [1,2,3,4,5]
fillArray.fill("fill",2,5)
// > 결과 <
array = [1,2,"fill","fill","fill"]
profile
Developer

0개의 댓글