여러 값을 순서가 있는 하나의 목록으로 관리합니다.
배열의 index는 0부터 시작하고 length는 항목 수를 나타냅니다. push와 pop은 끝에서, unshift와 shift는 앞에서 항목을 추가·제거합니다. const 배열도 변수 자체를 다른 배열로 재할당할 수 없을 뿐 내부 항목은 바꿀 수 있습니다.
push가 JavaScript를 끝에 붙여 항목이 셋이 되고, courses[1]에 대입하면 새 항목이 추가되는 것이 아니라 인덱스 1에 있던 CSS가 Modern CSS로 바뀝니다. 그래서 courses[0]은 여전히 HTML이고, join이 세 항목을 쉼표와 공백으로 이어 전체 목록을 만들며 length는 3입니다.
length보다 큰 인덱스에 대입하면 그 사이가 빈 칸으로 남습니다. 길이 3인 courses에 courses[5]를 대입하면 length는 6이 되고 인덱스 3과 4는 값이 없는 구멍이 됩니다. 반대로 courses.length = 1처럼 length를 줄이면 뒤쪽 항목이 잘려 나갑니다.
존재하지 않는 index를 읽으면 오류가 아니라 undefined가 나옵니다. length와 index 범위를 확인하세요.
직접 바꿔보세요첫 항목을 제거하고 Python을 배열 앞에 추가하세요.