join()
배열의 모든 원소를 문자열로 변환후 구분자로 이어 붙여서 반환.(구분자 기본값으로는 콤마(,)가 사용됨)
var arr = new Array(1, 2, 3);
var str = arr.join();
str : "1,2,3"
String.split()
Array.join() 함수와 반대되는 기능을 한다. 구분자를 입력받아 해당 구분자로 문자열을 자른뒤 배열로 반환한다
var str = "1,2,3";
var arr = str.split(",");
arr : ["1", "2", "3"]
reverse()
배열 안의 원소들의 순서를 뒤집는다. 주의할 점은 뒤집은 결과를 반환하는 방식이 아닌 함수 내부에서 변환이 진행 된다는 점이다
var arr = new Array(1, 2, 3);
arr.reverse();
arr : [3, 2, 1]
sort()
배열 안의 원소들을 정렬하여 반환한다. reverse() 함수와 마찬가지로 배열 내에서 직접 수행된다.
별도의 전달 인자 없이 호출할 경우 배열 안의 원소들을 알파벳 순으로 정렬한다.
배열 안의 원소가 문자열이 아닐 경우 임시로 문자열 변환 작업이 수행된다.
var arr = new Array("banana", "cherry", "apple");
arr.sort();
arr : ["apple", "banana", "cherry"]
concat()
기본의 배열원소 뒤에 전달 인자들을 추가한 배열을 반환한다. 허나 중복하여 중첩된 배열은, 원소로써 분리되어 나오지 않음을 주의 하자.
var arr = new Array(1, 2, 3);
arr.concat(4, 5) // arr : [1, 2, 3, 4, 5]
arr.concat([4, 5]) // arr : [1, 2, 3, 4, 5]
arr.concat([4, 5], [6, 7]) // arr : [1, 2, 3, 4, 5, 6, 7]
arr.concat([4, [5, [6, 7]]) // arr : [1, 2, 3, 4, 5, 6, 7]]
slice()
배열의 일부, 혹은 부분배열을 반환한다. 전달인자가 음수일 경우 배열의 마지막 원소에서 상대적인 위치로 배열 원소들을 지정한다.
var arr = new Array(1, 2, 3, 4, 5);
arr.slice(0, 3); // arr : [1, 2, 3]
arr.slice(3); // arr : [4, 5]
arr.slice(1, -1); // arr : [2, 3, 4]
arr.slice(-3, -2); // arr : [3]
splice()
배열에 원소를 삽입하거나 원소를 제거하려고 할때 사용하는 함수이다. 하지만 본 함수는 slice(), concat() 과는 달리 변경 결과를 반환하는 방식이 아닌 배열 내부에서 수행된다.
// 삭제
var arr = new Array(1, 2, 3, 4, 5, 6, 7, 8);
arr.splice(4); // [5, 6, 7, 8] 반환, arr : [1, 2 ,3 ,4]
arr.splice(1, 2); // [2, 3] 반환, arr : [1, 4]
arr.splice(1, 1); // [4] 반환, arr : [1]
// 삽입
var arr = new Array(1, 2, 3, 4, 5);
a.splice(2, 0, 'a', 'b'); // []반환, arr : [1, 2, 'a', 'b', 3, 4, 5]
a.splice(2, 2, [1, 2], 3); // ['a', 'b']반환, arr : [1, 2, [1, 2], 3, 4, 5]
push(), pop()
배열을 스택처럼 조작할 수 있다. push() 는 원소의 삽입 pop() 은 원소의 제거를 수행하며, 두 함수 모두 배열의 끝에서 연산을 수행한다. 배열 자체에서 연산이 수행되며 pop() 함수의 경우 제거한 원소를 반환하는 특징이 있다.
var arr = new Array()
arr.push(1, 2); // arr : [1, 2]
arr.pop(); // arr : [1], 2 반환
arr.push([4, 5]); // arr : [1, [4, 5]]
arr.pop(); // arr : [1], [4, 5] 반환
arr.pop(); // arr : [], 1반환
unshift(), shift()
push(), pop() 과는 다르게 배열의 끝이 아닌 맨 앞에서 연산이 이루어진다. unshift() 의 경우 새로운 배열의 길이를, shift() 는 제거한 배열원소를 반환한다.
var arr = new Array();
arr.unshift(1); // arr : [1], 1 반환
arr.unshift(22); // arr : [22, 1], 2 반환
arr.shift(); // arr : [1], 22 반환
arr.unshift(3, [4, 5]); // arr : [3, [4, 5], 1], 3 반환
arr.shift(); // arr : [[4, 5], 1], 3 반환
arr.shift(); // arr : [1], [4, 5] 반환
arr.shift(); // arr : [], 1 반환