🎯 초보자를 위한 자바스크립트 배열 완전 정복!
안녕하세요, 오늘은 자바스크립트 프로그래밍의 기본 중의 기본인 '배열(Array)'에 대해 알아보려고 합니다. 복잡하게 느껴질 수 있지만, 쉬운 예시와 함께라면 금방 이해할 수 있을 거예요! 😊
📦 배열이란 무엇일까요?
배열은 여러 데이터를 하나의 변수에 순서대로 저장할 수 있는 특별한 자료구조입니다. 마치 책장에 책을 순서대로 꽂아두는 것과 비슷해요!
// 배열 선언하기
const fruits = ['🍎 사과', '🍌 바나나', '🍊 오렌지', '🍇 포도'];
🔢 인덱스로 접근하기
배열의 각 항목은 인덱스(index)라는 번호를 통해 접근할 수 있어요. 중요한 점은 자바스크립트에서 인덱스는 0부터 시작한다는 것입니다!
console.log(fruits[0]); // 🍎 사과 (첫 번째 항목)
console.log(fruits[2]); // 🍊 오렌지 (세 번째 항목)
🌈 다양한 타입 저장하기
자바스크립트 배열의 매력적인 특징은 다양한 타입의 데이터를 함께 저장할 수 있다는 점이에요!
const mixedArray = [42, '안녕하세요', true, {name: '철수'}, [1, 2, 3]];
// 숫자, 문자열, 불리언, 객체, 배열까지 모두 함께 저장 가능!
🪄 동적 배열의 마법
자바스크립트 배열은 동적 배열이에요. 이것은 배열의 크기가 고정되어 있지 않고, 필요에 따라 자동으로 늘어나거나 줄어든다는 의미입니다!
const todoList = ['🧹 청소하기', '📝 숙제하기'];
todoList.push('🛒 장보기'); // 배열 끝에 항목 추가
console.log(todoList); // ['🧹 청소하기', '📝 숙제하기', '🛒 장보기']
🕳️ 빈 공간도 허용해요
특이하게도, 자바스크립트 배열은 중간에 빈 공간을 가질 수 있어요:
const sparseArray = [1, 2, 3];
sparseArray[5] = 6; // 인덱스 3과 4는 비어있게 됩니다
console.log(sparseArray); // [1, 2, 3, undefined, undefined, 6]
console.log(sparseArray.length); // 길이는 6입니다!
📏 배열의 길이 확인하기
배열의 길이(항목 개수)는 length 속성으로 쉽게 확인할 수 있어요:
const colors = ['빨강', '파랑', '초록', '노랑'];
console.log(colors.length); // 4
🛠️ 유용한 배열 메소드들
자바스크립트 배열에는 정말 많은 편리한 메소드들이 있답니다:
const numbers = [5, 2, 8, 1];
numbers.push(10); // 끝에 추가: [5, 2, 8, 1, 10]
numbers.pop(); // 끝에서 제거: [5, 2, 8, 1]
numbers.unshift(0); // 앞에 추가: [0, 5, 2, 8, 1]
numbers.shift(); // 앞에서 제거: [5, 2, 8, 1]
numbers.sort(); // 정렬: [1, 2, 5, 8]
🎭 배열은 사실 특별한 객체!
자바스크립트에서 배열은 특별한 형태의 객체입니다. 그래서 객체처럼 동작하면서도 순서가 있는 데이터를 효율적으로 다룰 수 있어요!
typeof [1, 2, 3]; // "object" 반환
Array.isArray([1, 2, 3]); // true 반환 (배열인지 확인)
💡 실생활 배열 활용 예시
일상에서 배열을 활용하는 방법을 생각해볼까요?
- 📋 할 일 목록 관리
- 🛒 쇼핑 카트 아이템 저장
- 📊 설문 조사 결과 저장
- 🖼️ 갤러리의 이미지 목록 관리
자바스크립트 배열에 대해서 설명해주세요.
자바스크립트의 배열(Array)은 순서가 있는 리스트형 객체로, 여러 값을 하나의 자료구조에 저장할 수 있습니다.
배열은 제로 인덱스 기반으로, 배열의 각 값은 인덱스를 통해 접근할 수 있습니다. 배열의 선언은 간단하며, 다양한 데이터 타입을 함께 저장할 수 있습니다.
const array = [1, 'apple', true, { key: 'value' }];
이 배열은 숫자, 문자열, 불리언, 객체 등 다양한 타입을 저장할 수 있으며, 배열의 첫 번째 요소는 array[0]으로, 두 번째 요소는 array[1]과 같이 접근할 수 있습니다.
자바스크립트 배열의 중요한 특징 중 하나는 동적 배열이라는 점입니다. 이는 배열의 크기를 미리 지정하지 않아도 되고, 요소를 추가할 때마다 배열의 크기가 자동으로 조정됩니다.
const arr = [1, 2, 3];
arr.push(4); // 배열의 끝에 요소 추가
console.log(arr); // [1, 2, 3, 4]
또한, 배열의 특정 인덱스에 값을 할당하면, 배열이 자동으로 확장됩니다.
arr[5] = 6;
console.log(arr); // [1, 2, 3, undefined, undefined, 6]
console.log(arr.length); // 6
이처럼 자바스크립트 배열은 동적으로 크기가 조정되는 유연성을 제공합니다. 요소를 추가하거나 특정 인덱스에 값을 할당하면, 배열은 자동으로 확장됩니다.
자바스크립트 배열의 length 속성은 배열의 크기를 나타내며, 배열에 요소가 추가되거나 제거될 때 자동으로 변경됩니다.
또한, 배열은 자바스크립트의 객체와 유사한 방식으로 관리되며, 해시 테이블과 같은 자료구조로 구현되어 있습니다. 이 덕분에 배열 요소들은 메모리 상에서 연속적이지 않아도 되며, 배열 크기를 미리 지정하지 않고 유연하게 사용할 수 있습니다.
'1일 1CS(Computer Science)' 카테고리의 다른 글
자바스크립트 함수에 대해서 아는대로 설명해주세요. (1) | 2025.04.16 |
---|---|
자바스크립트의 고급 메소드에 대해 설명해주세요. (1) | 2025.04.11 |
동일성과 동등성에 대해 설명해주세요 (0) | 2025.04.09 |
자바스크립트 호이스팅에 대해서 설명해주세요. (0) | 2025.04.09 |
equals와 hashCode는 왜 함께 재정의해야 할까요? (0) | 2025.04.08 |