Small Grey Outline Pointer [레츠기릿JS] 배열 기본
본문 바로가기
Dev./JavaScript

[레츠기릿JS] 배열 기본

by sso. 2023. 4. 17.
const fruits = ['사과', '오렌지', '배', '딸기'];

배열의 자릿수는 0부터 시작

인덱스(index) : 배열의 자릿수

요소(element) : 배열 내부의 값

 

const fruits = ['사과', '오렌지', '배', '딸기'];
  console.log(fruits[0]); //사과
  console.log(fruits[1]); //오렌지
  console.log(fruits[2]); //배
  console.log(fruits[3]); //딸기

 

배열안에 있는 값들의 자료형이 모두 같지 않아도 된다

배열 안에 다른 배열이나 변수를 넣을 수 있다

 

const arrayOfArray = [[1, 2, 3], [4, 5]];
arrayOfArray[0]; // [1, 2, 3]
const a = 10;
const b = 20;
const variableArray = [a, b, 30];
variableArray[1]; // 20 (b의 값)

 

배열 내부에 배열이 들어 있는 것을 이차원 배열이라고 한다

배열은 내부의 값이 중복되어도 되고, 아무 값 없이 만들 수도 있다

 

 

const everything = ['사과', 1, undefined, true, '배열', null];
console.log(everything.length); //6

배열의 요소 개수를 구해보기 배열이름.length

빈 값도 유효한 값이기 때문에 요소 개수를 셀 때 포함된다

 

배열 요소의 개수는 배열의 길이에서 +1

배열의 인덱스가 0부터 시작하므로!

 

 

 

요소를 추가&삭제하는 방법 

push 배열의 마지막에 추가하기

const target = ['가', '나', '다', '라', '마'];
target.push('바');
console.log(target);
//["가", "나", "다", "라", "마", "바"]

* const에는 새로운 값을 대입(=)하지 못한다고 기억하면 된다

const에 객체(배열, 함수, 객체 리터럴)가 대입되면 객체 내부의 속성이나 배열의 요소는 수정할 수 있다!

 

const target2 = ['a', 'b', 'c', 'd', 'e'];
target2 = ['f', 'g']; // 불가능
target2[0] = 'h'; // 가능

 

 

 

pop 배열의 마지막 요소 제거

const target = ['가', '나', '다', '라', '마'];
target.pop();
console.log(target);
//["가", "나", "다", "라"]

 

shift 배열의 첫번째 요소 제거

const target = ['가', '나', '다', '라', '마'];
target.shift();
console.log(target);
//["나", "다", "라", "마"]

 

 

splice 배열의 중간 요소 제거

 const target = ['가', '나', '다', '라', '마'];
 target.splice(1, 1);
 console.log(target);
//["가", "다", "라", "마"]

splice(시작인덱스, 제거할 요소 개수)

 

 

 

includes 배열에서 요소 찾기

const target = ['가', '나', '다', '라', '마'];
const result = target.includes('다');
const result2 = target.includes('카');
console.log(result); //true
console.log(result2); //false

 

 

 

indexOf / lastIndexOf 검색하고 싶은 값이 몇 번째 인덱스에 있는지?!

const target = ['라', '나', '다', '라', '다'];
const result = target.indexOf('다');
const result2 = target.lastIndexOf('라');
const result3 = target.indexOf('가');
console.log(result); //2
console.log(result2); //3
console.log(result3); //-1

indexOf 인덱스를 알려줌 / 없으면 -1

lastIndexOf 뒤에서부터 인덱스를 알려줌

 

 

연습 문제

//다음 배열에서 '라'를 모두 제거하세요
const arr = ['가', '라', '다', '라', '마', '라'];

let index = arr.indexOf('라');
while (index > -1) { 
  arr.splice(index, 1);
  index = arr.indexOf('라');
}

 

 

728x90

댓글