본문 바로가기

Javascript

18. 배열 내장메소드 총정리

배열 내장 함수를 알아두자 ! 


1. forEach

배열을 반복하는 함수이다. for문을 간단하게 사용하는 느낌쓰

let a = [1,2,3,4,5];

for(let i=0;i<a.length;i++) {

  console.log(a[i]); // 출력 : 1,2,3,4,5
  
}

for문을 이용하여 출력하면 이런식으로 한다. 이것을 forEach로 변환 하면... !! 

let a = [1,2,3,4,5];
 
a.forEach(function(s) {

   console.log(s); // 출력 : 1,2,3,4,5
   
})

반복하고자하는변수.forEach()


2. filter

조건에 대해 true인 값들을 새롭게 모아 리턴하는 메소드 이다.

let a = [1,2,3,4,5];

a.filter(function(el){
	
    rueturn el % 2 === 0;

})			//[2,4]

filter을 사용하면 배열을 순회 하면서 조건에 대해 참이 값들을 배열에 담아 리턴한다. 

2로 나누어 0이라는 소리는 짝수를 말한다. 그래서 [2,4]가 리턴된다. 


3. Map

Map은 들어오는 모든 요소를 조건에 맞게 변환한뒤 새로운 배열에 모두 담아 리턴한다. 

let a = [1,2,3,4,5];

a.map(function(el){
	
    return el * 2;
})			//[2,4,6,8,10]

4. reduce

배열의 각요소들을 각각 순회하며 실행하고 결과값 하나만 리턴한다. 

 

accumulator : 누적 되는 매개 변수
currentValue : 현재 순환하는 인덱스의 값
array : 호출한 배열

let array = [1,2,3,4,5];

array.reduce(function(acc,cur){
	
    rueturn acc + cur ;

},0)		//15

acc는 초기값 0으로 설정 하고 cur은 array을 순회하며 값을 하나씩 가져온다.


5. splice

제거한 요소를 담은 배열을 리턴한다. 하나의 요소만 제거한 경우 길이가 1인 배열을 반환 하고, 아무값도 제거하지 않으면 빈배열을 반환 한다. 

array.splice(star,deleteCount,item,item2...)

//하나도 제거 하지 않고 2번 인덱스에 'a' 추가 

let a = [1,2,3,4,5];
a.splice(2,0,'7')	//[1,2,'a',3,4,5]

//3번 인덱스에서 한개 요소 제거 

let a = [1,2,3,4,5];
a.splice(3,1);		//[1,2,3,5]

//2번 인덱스 한개 제거하고 거기에 'a','b' 추가 하기 

let a = [1,2,3,4,5];
a.splice(2,1,'7','8');		//[1,2,'a','b',4,5]

//0번 인덱스에서 2개 요소 제거 하고 'a','b','c'추가 

let = [1,2,3,4,5];
a.splice(0,2,'a','b','c');		//['a','b','c',3,4,5]

//-2인덱스에서 한개 요소 제거 

let a= [1,2,3,4,5];
a.splice(-2,1);		//[1,2,3,5]

//2번 인덱스 포함 뒤에 다 제거 
let a = [1,2,3,4,5];
a.splice(2); 	//[1,2]

5-1 slice

배열의 지정시작부터 지정끝 까지 복사하여 값을 담아 리턴한다. 원본은 바뀌지 않음 

array.slice(begin,end)

 

begin : 인덱스 시작을 나타낸다

// 음수일 경우 예를들어 slice(-2)인경우 뒤에서 두개의 요소를 말한다. 

//underfind 인경우 0부터 시작한다.

//배열의 길이보다도 큰 값이 오면 빈배열 리턴 한다. 

 

end : end-1인덱스 까지를 범위로 한다. 

//음수는 배열의 끝에서부터 길이를 나타낸다. -0,-1,-2...순으로 계산

//end가 생략된 slice()인경우 배열 전체를 추출한다. 

// end의 값이 배열의 길이보다 긴경우 배열 전체를 출력한다. 

let a = [1,2,3,4,5];
a.slice(1,3)	//[2,3]

6. shift,unshift,pop,push

예전에 올린 게시물을 확인 하면 될꺼 같습니당 !

 

yjdeveloper.tistory.com/9?category=807399

 

6. 배열

배열 : 순서가 있는 값 let myNumber = [73,93,86,61,96]; //각각의 원소는 쉼표로 구분 1. 요소 : element = 값 2. 순서 : index // 1이 아닌 0 부터 번호를 매김 let myNumber = [73,93,86,61,96]; --- myNumber..

yjdeveloper.tistory.com


7. indexOf

배열에서 원하는 요소의 인덱스 값을 알려준다.

let a = [1,2,3,4,5];
a.indexOf(2);	//1

8. join

배열의 요소들을 합쳐서 문자열로 반환 해줄때 사용한다.

각요소 사이 원하는것으로 구분을 둘수도 있고 생략 하면 ,(콤마)로 합쳐지고 ''(공백)으로 하면 모든 요소들이 합쳐진 상태로 리턴한다. 

let a =[1,2,3,4,5];

a.join('')  //12345
a.join()	//1,2,3,4,5
a.join('*') //1*2*3*4*5

 


9.concat

여러 배열의 요소들을 하나의 배열에 담아서 리턴한다. 

let a = [1,2,3,4,5];
let b = [6,7,8,9,10];
let c = ['a','b','c'];

a.concat(b);		//[1,2,3,4,5,6,7,8,9,10]

a.concat(b,c);		//[1,2,3,4,5,6,7,8,9,10,'a','b','c']

a.concat(1,[2,3])	//[1,2,3,4,5,1,2,3]

10. include

배열에 특정요소를 포함하고 있는지 판별한다.

array.include(valueToFind,fromIndex)

 

valueToFind : 탐색할요소 대소문자 구분해야함

fromIndex : 검색 시작할 인데스 위치 생략시 0 이다. 음수 일경우 뒤에서부터 !

[1, 2, 3].includes(2);     // true
[1, 2, 3].includes(3, 3);  // false //4자리부터 3이 있는지 
[1, 2, 3].includes(3, -1); // true //음수일땐 뒤에서부터 첫번째 자리 

let arr = ['a', 'b', 'c'];

arr.includes('c', 3);   // false	//탐색자리가 배열길이보다 길면 false
arr.includes('c', 100); // false

'Javascript' 카테고리의 다른 글

20. 동기 호출 VS 비동기 호출  (0) 2020.10.01
19. spread연산자 vs arguments  (0) 2020.10.01
17. 내장고차함수  (0) 2020.09.26
16. 고차함수  (0) 2020.09.26
15. 매개변수 예제 (쉽게설명)  (0) 2020.09.19