Array 주요 멤버
메소드 |
내용 |
join([str]) |
배열에 들어 있는 값을 모두 붙여서 하나의 문자열로 반환 ex) test.join() // 결과 "test1,test2,test3" |
sort(function) |
배열값들을 매개변수(값을 비교하는 함수)를 이용하여 정렬 파라미터인 function은 선택사항(필수아님) |
reverse() |
배열의 순서를 정반대로 바꾼다 |
concat(array) |
두개의 배열을 합해 하나의 배열로 반환(1차원 배열로 반환) |
push() |
배열의 마지막에 새로운 원소를 추가(반환 값은 추가한 후의 lengh) |
pop() |
배열의 마지막의 원소를 추출(가장 최근에 push()한 것을 추출) 반환값은 삭제한 배열의 원소(엘리먼트), pop의 파라미터는 사용하지 않음 |
다음의 코드를 통해 배열객체의 메소드에 대해 간단히 알아보자.
var arr = ['a','b','c','d','e'];
// stack에 push(), pop();
var pushResult = arr.push('f'); // 배열의 마지막 원소 다음에 추가
console.log(pushResult); // 6 추가한 후 배열의 length값을 기록
console.log(arr); // ["a", "b", "c", "d", "e", "f"]
var popResult = arr.pop(); // 배열의 마지막 원소를 추출(가장 최근에 push()한 값을 추출)
console.log(popResult); // 삭제한 배열의 원소를 반환
console.log(arr); // ["a", "b", "c", "d", "e"]
arr.reverse(); // 정반대로 변경
console.log(arr); //["e", "d", "c", "b", "a"]
arr.reverse(); // 다시 원래대로 변경
console.log(arr); //["a", "b", "c", "d", "e"]
// sort
var sortArr = ['b','d','c','a'];
sortArr.sort();
console.log(sortArr); // ["a", "b", "c", "d"]
var sortArr2 = [3,1,10,30,5,4];
sortArr2.sort();
/*
sort()를 하게 되면 [1,3,4,5,10,30] 이 기록될거라고 예상하겠지만 그렇지가 않다.
sort()의 값의 정렬 기준은 유니코드(unicode)로 작은 값이 앞에 오고 큰 값이 뒤에 온다
숫자는 작은 값에서 큰 값으로 구성되어 있어서 값이 작은 순서로 정렬된다
여기서 주의할 점은 첫번째 자릿수의 것을 비교한 다음 자릿수를 비교한다는 것이다
*/
console.log(sortArr2) // [1, 10, 3, 30, 4, 5]
// 위의 정렬 문제를 해결하기 위해서 sort()에 파리미터로 함수를 넘겨준다
sortArr2.sort(function(first, second) {
return first - second;
})
console.log(sortArr2) // [1, 3, 4, 5, 10, 30]
// concat
var value = [1,2];
var concatResult = value.concat(3,4);
console.log(concatResult) // [1, 2, 3, 4]
var value2 = [1,2];
var concatResult2 = value.concat([4],[5,6,[7]]); // 파라미터를 배열로 넘겨줌
console.log(concatResult2); // [1, 2, 4, 5, 6, Array[1]]
// 파라미터를 배열로 작성했으나 첫번째 엘리먼트 값만 배열에 첨부하고
// 배열안의 배열인 2차원 배열이 Array로 기록
Jaehee's WebClub
'JavaScript > 연산자ㆍ메서드ㆍ프로퍼티' 카테고리의 다른 글
Array.slice() - slice 메소드 (0) | 2016.09.29 |
---|---|
Array 객체와 String 객체의 slice 메소드 (0) | 2016.09.29 |
프로퍼티(Property)와 가비지 컬렉션(Garbage Collection) (0) | 2016.05.23 |
form event(폼 이벤트 타입) & 문서로딩 (0) | 2016.03.08 |
String.concat() & Array.concat() (0) | 2016.02.24 |