May 24, 2020
array.concat([value1[, value2[, ...[, valueN]]]])
let arr1 = [1, 2, 3, 4];
let arr2 = [5, 6];
let arr3 = [7, 8];
console.log(arr1.concat(arr2)); // [1, 2, 3, 4, 5, 6];
console.log(arr1.concat(arr2, arr3)); // [1, 2, 3, 4, 5, 6, 7, 8];
console.log(arr1); // [1, 2, 3, 4]
console.log(arr2); // [5, 6]
console.log(arr3); // [7, 8]
push()
: 배열 끝에 항목 추가unshift()
: 배열 앞에 항목 추가let arr = ['가', '나', '다'];
console.log(arr.push('라')); // 4
console.log(arr); // ['가', '나', '다', '라']
console.log(arr.unshift('마')); // 5
console.log(arr); // ['마', '가', '나', '다', '라']
pop()
: 배열 끝에 항목 제거shift()
: 배열 앞에 항목 제거let arr = ['가', '나', '다'];
console.log(arr.pop()); // 다
console.log(arr); // ['가', '나']
console.log(arr.shift()); // 가
console.log(arr); // ['가']
array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
start
: 배열의 변경을 시작할 인덱스deleteCount
: 배열에서 삭제할 요소의 수item1, item2, ...
: 배열에 추가할 요소 (아무 요소도 지정하지 않으면 배열에 추가하지 않고 삭제만 한다)let arr = ['가', '나', '다', '라'];
// 삭제 후 추가
console.log(arr.splice(2, 1, '마')); // ['다']
console.log(arr); // ['가', '나', '마', '라']
// 추가만
console.log(arr.splice(1, 0, '바')); // []
console.log(arr); // ['가', '바', '나', '마', '라']
// 삭제만
console.log(arr.splice(0, 2)); // ['가', '바']
console.log(arr); // ['나', '마', '라']
arr.slice([begin[, end]])
begin
부터 end - 1
까지에 대한 얕은 복사본을 새로운 배열 객체로 반환한다.let arr = [1, 2, 3, 4, 5];
console.log(arr.slice(2, 5)); // [3, 4, 5]
console.log(arr); // [1, 2, 3, 4, 5]
let arr = [1, 2, 3, 4, 5];
console.log(arr.length); // 5
arr.fill(value[, start[, end]])
start
인덱스부터 end - 1
인덱스까지 정적인 값 하나로 채웁니다.start
, end
값이 없을 경우 value
값으로 배열을 채운다.let arr = [1, 2, 3, 4, 5];
console.log(arr.fill(0)); // [0, 0, 0, 0, 0];
console.log(arr.fill(1, 1, 3)); // [0, 1, 1, 0, 0];
console.log(arr.fill(5, 2)); // [0, 1, 5, 5, 5];
console.log(arr) // [0, 1, 5, 5, 5];
arr.includes(valueToFind[, fromIndex])
fromIndex
: 이 배열에서 검색을 시작할 위치. 기본값은 0
.let names = ['Jessie', 'Justin', 'Leah'];
console.log(names.includes('Jessie')); // true
console.log(names.includes('Eddy')); // false
console.log(names.includes('Jessie', 1)); // false
arr.join([separator = ',']);
,
)let arr = [1, 2, 3, 4, 5];
console.log(arr.join()); // 1,2,3,4,5
console.log(arr.join('-')); // 1-2-3-4-5
console.log(arr.join('')); // 12345
console.log(arr); // [1, 2, 3, 4, 5]
arr.filter(callback(element[, index[, array]])[, thisArg])
element
: 처리할 현재 요소index
: 처리할 현재 요소의 인덱스array
: filter를 호출한 배열thisArg
: callback을 사용할 때 this로 사용하는 값let scores = [30, 40, 60, 75, 90];
let resultScores = [];
resultScores = scores.filter((score) => {
return score > 70;
});
console.log(resultScores); // [75, 90]
console.log(scores); // [30, 40, 60, 75, 90]
arr.map(callback(element[, index[, array]]) [, thisArg])
element
: 처리할 현재 요소index
: 처리할 현재 요소의 인덱스array
: map을 호출한 배열thisArg
: callback을 사용할 때 this로 사용하는 값let arr = [1, 2, 3, 4, 5];
let resultArr = [];
resultArr = arr.map((item) => {
return item ** 2;
});
console.log(resultArr); // [1, 4, 9, 16, 25]
console.log(arr); // [1, 2, 3, 4, 5]
arr.sort([compareFunction])
compareFunction
: 정렬 순서를 정의하는 함수. 생략하면 배열은 각 요소의 문자열 변환에 따라 각 문자의 유니 코드 코드 포인트 값에 따라 정렬된다.let arr = [1, 2, 100, 10, 222, 3];
// 유니코드에 따라 정렬
arr.sort();
console.log(arr); // [1, 10, 100, 2, 222, 3]
// 오름차순 정렬
arr.sort((a, b) => {
return a - b;
});
console.log(arr); // [1, 2, 3, 10, 100, 222]
// 내림차순 정렬
arr.sort((a, b) => {
return b - a;
});
console.log(arr); // [222, 100, 10, 3, 2, 1]
arr.reverse()
let arr = [4, 2, 3, 5, 1];
arr.reverse();
console.log(arr); // [1, 5, 3, 2, 4]