http://blog.302chanwoo.com/2017/08/javascript-array-method/
⭐️ 배열 메소드
✨ pop
뒷 부분 삭제
var arr = [ 1, 2, 3, 4 ];
arr.pop();
console.log( arr ); // [ 1, 2, 3 ]
✨ push
뒷 부분 값에 삽입
var arr = [1,2,3,4];
arr.push(5);
console.log(arr);
//[1,2,3,4,5]
✨ unshift
앞 부분에 값 삽입
var arr = [1,2,3,4];
arr.unshift(5);
console.log(arr);
//[5,1,2,3,4]
✨ shift (= 옮기다)
앞 부분의 값 삭제
var arr = [1,2,3,4];
arr.shift();
console.log(arr);
//[2,3,4]
✨ splice
배열의 특정 위치에 요소를 추가하거나 삭제
var arr = [1,2,3,4,5,6,7];
arr.splice(2,1, "a", "b");
console.log(arr);
// 2번째 인덱스에 1개 제거 후 "a", "b" 추가
arr.aplice(5); //앞에서 첫번째부터 5번째까지 제거
✨ slice
- 스타트 인덱스부터 끝나는 인덱스까지 shallow copy를 새로운 배열 객체로 반환
var arr = [1,2,3,4,5,6,7];
var newArr = arr.slice(3,6);
console.log(newArr)
//[4,5,6]
// (0번째 인덱스도 존재) 3번째 인덱스부터 6번째 인덱스까지
✨ concat
- 다수의 배열을 합치고 병합된 배열의 사본을 변환
var arr1 = [1,2,3];
var arr2=[4,5,6];
var arr3 = arr2.concat(arr1);
//[4,5,6,1,2,3]
✨ every
- 모든 요소가 제공한 함수로 구현된 테스트를 통과하는지 테스
var arr = [1,2,3,4,5,6,7,8,9,10];
var isEven = function(value){
return value %2 === 0;
}
console.log(arr.every(isEven));
//모든 요소가 true이면 true, 그렇지 않으면 false
✨ some
- true일 때까지 배열의 각 원소를 반복
var arr = [1,2,3,4,5,6,7,8,9,10];
var isEven = function(value){
return value %2 === 0;
}
console.log(arr.some(isEven));
//하나라도 true이면 true, 그렇지 않으면 false
✨ forEach
- 각 원소별로 지정된 함수를 실행
var arr = [1,2,3];
arr.forEach(function(value){
console.log(value)
})
//1,2,3
✨ map
- 배열의 각 원소별로 지정된 함수를 실행한 결과로 새로운 배열을 변환
var arr = [1,2,3,4,5,6,7,8,9,10];
var isEven = function(value){
return value %2 ===0;
}
var newArr = arr.map(isEven);
console.log(newArr);
// [false, true, false, true, false, tr...]
✨ filter
- 결과 값을 true로 만드는 원소들로만 구성된 별도의 배열로 변환
var arr = [1,2,3,4,5,6,7,8,9,10];
var isEven = function(value){
return value %2 ===0;
}
var newArr = arr.filter(isEven);
console.log(newArr);
// [2, 4, 6, 8, 10]
✨reduce
- 누산기 및 배열의 각 값에 대해 한 값으로 줄도록 함수를 적용
var arr = [1,2,3,4,5,6,7,8,9,10];
var value = arr.reduce(function(previousValue, currentValue, index){
return previousValue + currentValue;
})
console.log(value);
// 55
✨ reverse
- 순서를 반대로
var arr = [1,2,3,4];
arr.reverse();
console.log(arr)
// [4, 3, 2, 1]
✨sort
- 알파벳 순으로, 지정한 함수에 따른 순서를 정렬
- 우너소를 문자열로 취급해 사전적으로 정렬
var arr = [13,12,11,10,5,3,2,1];
arr.sort();
console.log(arr);
// [1, 10, 11, 12, 13, 2, 3, 5]
//sort 함수로 정렬
var arr= [13,12,11,10,5,3,2,1];
arr.sort(function(a, b){
return a-b
})
console.log(arr)
// [1, 2, 3, 5, 10, 11, 12, 13]
✨ toString
- 문자열로 바꾸어 반환
var arr = [1,2,3,4];
console.log(arr.toString());
//1,2,3,4
✨ valueOf
- toString과 비슷, 그러나 배열로 반환
var arr = [1,2,3,4];
console.log(arr.valueOf());
// [1, 2, 3, 4]
✨ join
- 배열 원소 전부를 하나의 문자열로 합침
var arr = [1,2,3,4];
console.log(arr.join()); //1,2,3,4
console.log(arr.join('-')); // 1-2-3-4
✨ split
- string 객체를 지정한 구분자를 통해 배열로 만드는 것
const str = 'The quick brown fox jumps over the lazy dog.';
const words = str.split(' ');
console.log(words);
["The", "quick", "brown", "fox", "ju...]