티스토리 뷰

배열(Array)이란 연관된 데이터를 모아서 통으로 관리하기 위해서 사용하는 데이터타입이다.

변수가 하나의 데이터를 저장하기 위한 것이라면 배열은 여러 개의 데이터를 하나의 변수에 저장하기 위한 것

기본형식: 대괄호 [ element1, element2 ... ]; 

let member = ['감자', '고구마', '호박'];

배열의 내부에 있는 데이터 각각을 '원소' 즉, element라고 합니다. 또한, 원소끼리의 구분은 ,(콤마)로 해줍니다.

그리고 그 원소들이 갖고있는 고유값(문맥적으론 배열의 원소가 갖고있는 순서)을 한국어로 '색인' 영어로는 index라고 합니다. index는 0부터 시작합니다. 

// arrayName[index]
alert(member[0]); //output: '감자'

배열이 없다면?

  • 함수는 여러 개의 값을 입력값으로 받을 수 있지만 출력값(반환값, return)으로는 하나만 내보냅니다. ->하지만 함수에 배열을 담아서(여러개의 데이터를 묶은 상태) 리턴하게 된다면 우리는 여러개의 리턴값을 사용할 수 있게 됩니다. 
function get_members() {
        return ["감자", "고구마", "호박"];
      }
      const members = get_members();
      document.write(members[0]);
      //output: 감자

배열의 사용 

  • 배열에서 요소를 꺼내올 때, 모든 인덱스의 내용을 기억하고 꺼내오는 것은 어려운 일이다. 실제로 데이터의 양이 많아지면 불가능해진다. 그래서 우리는 배열에서 요소를 하나하나 꺼내서 꺼내진 값들을 가공하는 것이 배열의 핵심 기능이라고 생각하면 된다. 
  • 여기서 요소를 하나하나 꺼낼 때, 반복문이 필요하다. 

TIP: toUpperCase() 함수는 소문자를 대문자로 바꿔주는 JS의 내장함수이다. *내장함수<->사용자 정의함수(우리가 직접 만들어서 사용하는 함수)

배열의 크기

▶데이터추가

push() : 배열의 끝에 원소를 추가하는 방법(하나 이상도 가능)

-기존 배열에 원소를 추가하며 배열의 새로운 길이를 반환 

const arr1 = ["감자", "고구마"];
      arr1.push("호박");
      console.log(arr1);
/* output: Array(3)
0: "감자"
1: "고구마"
2: "호박"
length: 3 */

concat() : 기존 배열을 복사한 후 원소를 추가하며 새 배열을 리턴 *concat 은 2개의 배열을 합칠 때 많이 사용

unshift() : 배열의 맨 앞에 원소를 추가하는 방법

splice() : 배열의 원하는 장소에 원소를 추가하는 방법, 배열의 특정구간을 추출하거나, 특정구간에 특정 배열을 추가함

// 사전링크https://opentutorials.org/course/50/110

 

splice - 생활코딩

요약(Summary) 배열의 특정구간을 추출하거나, 특정구간에 특정 배열을 추가함 문법(Syntax) array.splice(index, howmany, element1, ...., elementN); 인자(Parameters) 인자명 데이터형 필수/옵션 설명 index number 필수

opentutorials.org

const arr1 = ['a', 'b', 'c']; 
arr1.splice(1,0,'z');
//1번째 인덱스인 'b'의 값에서 삭제되는 것 없이(0) 'z'를 추가하겠다.

 

index number 필수 배열에 추가할 특정 배열의 위치를 가르키는 index
howmany number 필수 index에서부터 제거될 원소들의 수. index부터 index+howmany에 해당하는 원소들은 삭제된다. 이 값이 0이면 어떠한 원소도 삭제되지 않는다.
element1,...,elementN number 옵션 index와 index+howmany 사이에 추가될 값

//splice 이해못해서 골머리 썩었으니 사전 꼼꼼히 읽어보고 사용해보기

 

▶데이터제거

shift() - 배열의 첫번째 원소를 제거한다.

const arr1 = ['a', 'b', 'c']; 
arr1.shift();
console.log(arr1); 
//output: ['b', 'c'];

pop() : 배열의 끝에 있는 원소를 제거한다.

 

▶데이터정렬

sort() : 배열의 원소를 정렬해준다.  // sortfunction을 따로 지정하여 원하는 정렬방식대로 정렬할 수도 있습니다. 사전을 참고하세요.

const arr1 = ["고릴라", "참치", "잉어킹", "팥죽"];
arr1.sort();
console.log(arr1); //output: (4) ['고릴라', '잉어킹', '참치', '팥죽']; ㄱㄴㄷ순으로 정렬됨, 알파벳도 마찬가지

reverse() : 배열의 원소를 역순으로 정렬한다. 

댓글