2-1. 배열이란?

배열은 대괄호를 이용해 여러 개의 값을 리스트 형태로 나열한 자료구조를 뜻하며 ‘인덱스로 참조되는 요소’라는 값의 집합이다. 여기서 배열의 요소(element)는 배열을 구성하는 각각의 값이고 배열에서 요소의 위치를 가리키는 숫자를 인덱스(index)라고 한다. 이 배열을 다루기 위해 다수의 메소드가 제공되는데 이를 이용해 효율적으로 값에 접근할 수 있다.

아래의 예시처럼 배열의 요소에는 여러가지의 자료형이 들어갈 수 있다는 특징이 있다.

const example = [ 1114, "cafe", false, function cafe(){}, null, undefined, NaN ]

2-2. 배열의 특징

배열의 중요한 특징은 세 가지로 아래와 같다.

  1. 요소의 값을 수정할 수 있고 인덱스로 요소의 값을 호출 할 수 있다.
  2. JavaScript의 배열은 배열 타입으로 존재하지 않고 객체 타입으로 존재한다. 따라서 자료구조에 나오는 엄밀한 의미인 ‘메모리 상의 연속 배치의 배열’이 아니다.
  3. 값의 참조가 인덱스로 이루어진다. 이는 일반적인 객체와의 가장 큰 차이인데, 인덱스와 length 프로퍼티가 존재한다. 뒤의 length 프로퍼티에서 자세히 알아보자.

2-2-1. 요소 값의 호출, 변경 및 타입 확인

값의 호출

const cafe = ['coffee', 'cake', 'tea', 'cookie']
console.log(cafe[0])
//expected output: coffee
console.table(cafe)

cafetable.JPG

값의 변경

const cafe = ['coffee', 'cake', 'tea', 'cookie']
cafe[0] = 'tea'
console.log(cafe)
//expected output: ['tea', 'cake', 'tea', 'cookie']