[자바스크립트] Array(배열)

soonil90·2023년 1월 3일

Array 🎯

1. Declaration

배열을 선언해보자.

const arr1 = new Array();
const arr2 = [1, 3];

2. Index position

인덱스 위치를 확인해보자.

const fruits = ['🍎', '🍌'];
console.log(fruits); // '🍎', '🍌'
console.log(fruits.length); // 정렬의 길이는 2이다.
console.log(fruits[0]); // 인덱스 0은 '🍎'이다.
console.log(fruits[1]); // 인덱스 1은 '🍌'이다.
console.log(fruits[fruits.length - 1]);

3. Looping over an array

  • 배열의 인덱스를 하나 씩 꺼내보자.
// a. for
for (let i = 0; i < fruits.length; i++) {
  console.log(fruits[i]);
}

// b. for of
for (let fruit of fruits) { // let 뒤에 fruit라고 할당
  console.log(fruit);
}

// c. forEach
fruits.forEach((fruit) => console.log(fruit));

4. Addition, deletion, copy

  • push: 배열 끝에 아이템 추가.
fruits.push('🍓', '🍑');
console.log(fruits);
  • pop: 배열 끝부터 아이템 제거.
fruits.pop();
fruits.pop();
console.log(fruits);
  • unshift: 배열 앞에서 부터 아이템 추가.
fruits.unshift('🍓', '🍑');
console.log(fruits);
  • shift: 배열 앞에서 부터 아이템 제거.
fruits.shift();
console.log(fruits);

note! shift, unshift are slower than pop, push

shift와 unshift는 전체배열을 옮겼다가 앞에 인덱스를 수정하기 때문에 느리다. pop과 push를 사용하자.

fruits.push('🍓', '🍑', '🍋');
console.log(fruits);
fruits.splice(1, 1); // 인덱스 [1]을 지움
console.log(fruits);
fruits.splice(1, 1, '🍎','🍉');
console.log(fruits);

// combine two arrays
const fruits2 = ['🍒','🍐'];
const newfruits = fruits.concat(fruits2);
console.log(newfruits);

5. Searching

  • indexOf: 인덱스의 위치를 알려준다.
const fruits = ['🍎', '🍌']
console.log(fruits); // '🍎', '🍌'
console.log(fruits.indexOf('🍎')); // 0
console.log(fruits.indexOf('🍉')); // 배열안에 해당 값이 없으면 -1 출력
  • includes: 해당 인덱스를 포함하는지 안하는지 true, false로 나타냄.
console.log(fruits.includes('🍉'));
console.log(fruits.includes('🍒'));
  • lastIndexOf: 배열에서 중복인 것의 제일 뒷순서를 알려줌.
fruits.push('🍎');
console.log(fruits); // '🍎', '🍌', '🍎'
console.log(fruits.indexOf('🍎')); // 0
console.log(fruits.lastIndexOf('🍎')); // 2
profile
문제를 해결하자

1개의 댓글

comment-user-thumbnail
2023년 1월 4일

1등

답글 달기