Array (배열)

이진경·2019년 10월 4일
0

스크린샷 2019-09-16 오전 2.56.49.png

[javascript] : Array (배열)

  • 배열은 수많은 데이터의 집합을 저장하기 위한 용도로 사용되면서 중복된 변수를 줄이기 위해서도 사용된다
    어떤 타입이던지간에 그 타입의 데이터를 연속된 공간에 저장하는 자료구조이며
    각 데이터 저장 위치는 인덱스를 부여해서 접근 가능함.
<배열의 모양>
let a = ["배열", "배열임"]
//배열은 대괄호([])로 감싸져 있음
//대괄호안의 값들 하나하나를 element(요소)라고 부름
//요소의 사이에는 쉼표로 구분되고 어떤 type도 들어올 수 있다.
tring, Number, Array etc..
  • 배열의 요소는 순서(index)를 갖고 있는 데 순서는 0부터 시작됨
<example>
var anything = ["대전", 1987, ["하나", "둘", 3]];
//String형인 "대전"은 index가 0
//Number형인 1987은 index가 1
//Array형인 ["하나", "둘", 3]은 index가 2.
  • 요소추가
//빈배열
let alpha = [];
//빈배열에 아래 요소 추가
alpha[0] = "a";
alpha[1] = "b";
alpha[2] = "c";
alpha[6] = "j";
//굳이 차례대로 추가 안해주고 원하는 위치에 넣어주어도 되지만 그대신 4,5번째 요소를
console.log찍게되면 undefined라고 나옴 => 할당된 값이 없기 때문
let alpha=["a","b","c",undefined, undefined, "j"] 
//이렇게 6개의 요소가 있는 배열이 됨
  • 요소를 수정할 땐..?
alpha[5] = "w";
console.log(cities[5]);

배열의 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( 0 );
console.log( arr ); // [ 0, 1, 2, 3, 4 ]
  • shift
    배열 앞부분의 값을 삭제
var arr = [ 1, 2, 3, 4 ];
arr.shift();
console.log( arr ); // [ 2, 3, 4 ]
  • splice
    배열의 특정위치에 요소를 추가하거나 삭제

splice( index, 제거할 요소 개수, 배열에 추가될 요소 )

<ex 1>
var arr = [ 1, 2, 3, 4, 5, 6, 7 ];
arr.splice( 3, 2 );
console.log( arr ); // [ 1, 2, 3, 6, 7 ]   3번째 인덱스에서부터 2개 제거
<ex 2>
var arr = [ 1, 2, 3, 4, 5, 6, 7 ];
arr.splice( 2, 1, "a", "b");
console.log( arr ); // [ 1, 2, "a", "b", 4, 5, 6, 7 ] 
2번째 인덱스에서 1개 제거 후 "a"와 "b"를 추가
  • slice( startIndex, endIndex)
    배열의 startIndex부터 endIndex까지(endIndex는 포함되지 않음) shallow copy로
    새로운 배열 객체로 반환
var arr = [ 1, 2, 3, 4, 5, 6, 7 ];
var newArr = arr.slice( 3, 6 );
console.log( 'slice',  newArr ); // [ 4, 5, 6 ]
  • concat
    다수의 배열을 합치고 병합된 배열을 반환
var arr1 = [ 1, 2, 3 ];
var arr2 = [ 4, 5, 6 ];
var arr3 = arr2.concat( arr1 );
console.log( arr3 ); // [ 4, 5, 6, 1, 2, 3 ]

0개의 댓글