array.concat(item...)
: 자신의 복사본에 인수로 넘어온 값들을 추가한 새로운 배열을 반환한다.
인수로 넘어온 값이 배열이면 각각의 요소를 개별적으로 새로운 배열에 추가 한다.
var a = ['a', 'b', 'c']; var b = ['x', 'y', 'z']; var c = a.concat(b, true); // c는 ['a', 'b', 'c', 'x', 'y', 'z', true] |
array.push(item...)
: push 메소드는 인수로 넘어온 항목을 배열의 끝에 추가한다.
concat 과 다르게 push 는 배열 자체를 수정하여 넘어온 인수 전체를 배열에 추가 한다.
반환 값은 배열의 새로운 length 값이다.
var a = ['a', 'b', 'c']; var b = ['x', 'y', 'z']; var c = a.push(b, true); // a는 ['a', 'b', 'c', ['x', 'y', 'z'], true], c는 5 |
array.join(구분자)
: 배열로 문자열을 만든다. 배열로 만드는 과정은 일단 배열의 모든 요소를 각각 문자열로 만든 후에
이들을 각 항목 사이에 구분자를 붙여서 하나로 합치는 것이다. 기본 구분자는 ',' 이다.
만약 많은 수의 문자열을 하나로 합쳐야 한다면 각각의 문자열을 배열에 담은 후 join 을 사용하는 것
이 + 연산자로 연결하는 것 보다 빠르다.
(단, 최근들어 브라우저의 처리 속도가 개선됨에 따라 브라우저별로 반대의 상황이 벌어지는
경우도 있으니, 테스트 해보길 바란다.) - 자바스크립트 성능 최적화
var a = ['a', 'b', 'c']; a.push('d'); var c = a.join(''); // c는 'abcd' |
array.pop()
: pop 과 push 메소드는 배열을 스택처럼 동작하게 한다.
pop 은 배열의 마지막 요소를 제거하고 제거한 요소를 반환한다.
var a = ['a', 'b', 'c'];
var c= a.pop( ); // c는 'c', a는 ['a', 'b']
pop 메소드는 이렇게 구현해 볼 수 있다.
Array.method('pop', function( ) { return this.splice(this.length - 1, 1)[0]; }); |
array.reverse()
: 배열 요소의 순서를 반대로 변경한다. 반환값은 배열이다.
var a = ['a', 'b', 'c']; var b = a.reverse( ); // a 와 b 모두 ['c','b','a'] |
array.shift()
: 배열에서 첫 번째 요소를 제거하고 제거한 요소를 반환 한다.
shift 는 보통 pop 보다 많이 느리다.
var a = ['a', 'b', 'c']; var c = a.shift( ); // a 는 ['b', 'c'], c는 'a' |
array.slice()
: 배열의 특정 부분에 대한 복사본을 만든다.
매개변수 start 부터 end 전까지 복사된다. end 는 옵션이며 기본값은 length 이다.
매개변수 값이 음수일 경우 length 값이 더해 진다.
var a = ['a', 'b', 'c']; var b = a.slice(0, 1); // b 는 ['a'] var c = a.slice(1); // c 는 ['b', 'c'] var d = a.slice(1,2); // d 는 ['b'] |
array.splice(start, deleteCount, item...)
var a = ['a', 'b', 'c']; var r = a.splice(1, 1, 'ache', 'bug'); // a 는 ['a', 'ache', 'bug', 'c'], r 은 ['b'] |
array.sort(비교함수)
: 배열의 내용을 적절하게 정렬한다.
자바스크립트의 기본 비교 함수는 정렬된 배열 요소들을 문자열로 간주하기 때문에 숫자들의 배열을
제대로 정렬하지 못한다.
var n = [4, 14, 7, 16, 23, 42]; n.sort( ); // n 은 [14, 16, 23, 4, 42, 7] |
비교함수를 아래와 같이 바꿔서 하면 숫자들의 배열을 정상적으로 정렬할 수 있다.
n.sort( function (a, b) { return a - b; }); // n 은 [4, 7, 14, 16, 23, 42]; |
var a = ['a', 'b', 'c']; var r = a.unshift('?', '@'); // a 는 ['?', '@', 'a', 'b', 'c'], r 은 5 |
'IT > JavaScript' 카테고리의 다른 글
부모창에서 자식창으로 데이터 보내기 (0) | 2013.12.23 |
---|---|
JavaScript 로 AD(Active Directory) 로그인 여부 확인 하기 (0) | 2013.12.23 |
자바스크립트 핵심 가이드 - (배열) (0) | 2013.12.23 |
자바스크립트 핵심 가이드 - (상속) (0) | 2013.12.23 |
자바스크립트 핵심 가이드 - (함수 4탄 모듈, 연속호출, 커링, 메모이제이션 ) (0) | 2013.12.23 |