배열, Array란 무엇인가?
자료구조
- 비슷한 타입의 오브젝트들을 묶어 두는 것을 자료구조라고 한다.
- 다른 언어에서는 동일한 타입의 데이터만 한데 묶을 수 있다.
- 자바스크립트는 다양한 종류의 데이터 타입을 담을 수 있지만 프로그래밍적으로 좋지는 않다.
- 자료구조에서는 검색, 삽입, 정렬, 삭제가 가능하다.
배열
- point! 인덱스가 지정되어 있는 칸의 나열
- 한 배열안에는 동일한 타입의 데이터를 넣는 것이 좋다.
배열 활용하기
1. Declaration
const arr1 = new Array();
const arr2 = [1, 2];
2. Index position
const fruits = ['apple', 'banana'];
console.log(fruits);
console.log(fruits.length);
console.log(fruits[0]);
console.log(fruits[1]);
console.log(fruits[2]);
console.log(fruits[fruits.length - 1]);
3. Looping over an array
for (let i = 0; i < fruits.length; i++){
console.log(fruits[i]);
}
for (let fruit of fruits) {
console.log(fruit);
}
fruits.forEach((fruit) => console.log(fruit));
4. Addition, deletion, copy
fruits.push('strawberry', 'peach');
console.log(fruits);
fruits.pop();
console.log(fruits);
fruits.pop();
console.log(fruits);
fruits.unshift('strawberry', 'lemon');
console.log(fruits)
fruits.shift();
console.log(fruits);
fruits.shift();
console.log(fruits);
fruits.push('strawberry', 'lemon', 'peach');
console.log(fruits);
fruits.splice(1, 1);
console.log(fruits);
fruits.splice(1, 1, 'pear', 'orange');
console.log(fruits);
const fruits2 = ['mango','pine'];
const newFruits = fruits.concat(fruits2);
console.log(newFruits)
5. Searching
console.log(fruits);
console.log(fruits.indexOf('lemon'));
console.log(fruits.indexOf('mango'));
console.log(fruits.includes('lemon'));
console.log(fruits.includes('mango'));
fruits.push('apple');
console.log(fruits);
console.log(fruits.indexOf('apple'));
console.log(fruits.lastIndexOf('apple'));