javascript 유용한 배열 메서드


안녕하세요. 남산돈가스 입니다.

오늘은 엄청 자주 쓰이면서 쓸 때마다 헷갈리는 javascript 배열 메서드에 대해서 몇가지 알아보도록 하겠습니다.

1. push & pop
   배열을 사용하는데 가장 기본적인 개념으로 데이터를 + 하고 - 하는 메서드입니다.
바로 다음에 다루겠지만, push - pop, unshift - shift 를 짝지어 설명하는 이유는, 두 쌍 모두 데이터를
+, - 하는 메서드지만 해당 데이터를 배열의 어느 곳에다 + 하냐, 어디에서 - 하냐 다르기 때문입니다.

이 push & pop 은 데이터를 배열의 가장 끝 부분에서 핸들링하는 메서드입니다.

var arr1 = [ 1,2,3,4,5 ];
 
arr1.push(6);
arr1.push(7);
console.log(arr1);                // [1,2,3,4,5,6,7]
arr1.pop();                            
console.log(arr1);                // [1,2,3,4,5,6]


2. unshift & shift

 앞에서 언급했지만, unshift - shift 는 배열의 가장 앞에서 데이터를 핸들링하는 메서드입니다. 사용법은 push & pop 과 동일합니다.

var arr2 = [ 'a', 'b' ]
 
arr2.unshift('c');
arr2.unshift('d');
console.log(arr2);                  // [ 'd', 'c', 'a', 'b' ] 
arr2.shift();
console.log(arr2);                  // [ 'c', 'a', 'b' ] 


3. join

 join 메서드는 배열데이터를 ',' 구분자로 구분하여 string 으로 쉽게 변환해주는 기능을 한다.
기본적으로 ',' 를 구분자로 구분하지만 구분자를 설정할 수도 있다.

var arr3 = [ 1, 2, 3, 'a' ]
 
var arrToStr = arr3.join();
console.log(arrToStr);                  // 1,2,3,a
arrToStr = arr3.join('/');
console.log(arrToStr);                  // 1/2/3/a
 

4. splice

splice 메서드는 배열 내 특정 원소를 제거할 수 있는 메서드이고, 이 특정 원소를 제거하려면 해당 원소에 대한 index를 알아야한다. 또한, 범위를 지정하여 원소를 제거할 수 도 있다.

사용법 - splice( '제거를 시작할 index'  , '설정한 index부터 삭제할 갯수 지정' )

var arr4 = [ 1,2,3,4,5,6,7 ]
 
console.log(arr4)       // [1,2,3,4,5,6,7]
 
// arr4배열의 0번째 index부터 2개의 원소 삭제
arr4.splice(0,2)
console.log(arr4)       // [3,4,5,6,7]
 
// 파라미터는 한개만 넘길 경우, 해당 index부터 마지막 원소까지 모두 삭제
arr4.splice(1);
console.log(arr4)       // [3];


5. map

map 메서드는 배열의 각 원소를 함수의 인자로 전달하고 해당 함수로 연산 후 새로운 배열로 반환해주는 기능을 합니다. 이 기능은 ES6에 추가 된 배열 메서드입니다.

var arr5 = [ 3,4,5 ]
 
console.log(arr5)       // [ 3,4,5 ]
 
// arr5내 원소를 각각의 x라는 원소에 접근하여 연산식을 수행한 뒤 원소를 배열로 반환
var newArr = arr5.map(x=>{
// 각 원소들의 값에 1을 더하여 새로운 배열로 반환
return x + 1;
})
 
console.log(newArr)       // [ 4,5,6 ]


6. forEach

forEach 메서드는 반복순회 메서드이며, 이 역시 ES6부터 추가 된 기능입니다.

var arr6 = [ 2,4,6 ]
 
console.log(arr6)       // [ 2,4,6 ]
 
// arr6의 각각의 원소를 x라는 값으로 접근, i는 인덱스값으로 자동 접근
arr6.forEach( (x,i) => {
console.log('[ ' + i +' ] : '+ x )
})
 
// 위 forEach 순회문과 동일한 결과값
for(var i=0; i < arr6.length; i++){
console.log('[ ' + i +' ] : '+ arr6[i] )
}


여기까지 javascript의 유용한 메서드에 대해서 알아보았습니다. 이 정도 사용법만 알고계신다면, javascript 내에서 배열을 다루는데 아주 유용하실 것이라고 생각합니다.

감사합니다.

댓글

주간 인기글

[정보] 인스타그램은 당신의 소리를 '듣고' 있을 수도 있습니다

[Angular] 모델, 값이 바뀌었는데 화면 template 이 업데이트 되지 않을 때 조치 팁

[AWS] Lambda + API GateWay를 이용해 간단한 RESTful API 만들기 #1

[AWS] Lambda + API GateWay를 이용해 간단한 RESTful API 만들기 #2

안드로이드에서 당겨서 새로고침(SwipeRefreshLayout) 쉽게 구현하기