COCO World

[Javascript/자바스크립트] 자료형 - 배열 본문

Language/JavaScript

[Javascript/자바스크립트] 자료형 - 배열

코코월드주인장 2023. 1. 25. 11:30

1. 배열

   :키를 사용해 식별할 수 있는 값을 담은 collection은 객체라는 자료구조를 이용해 저장하는데, 개발을 진행하다 보면 순서와 관련하여

   작업을 필요한 경우 자료구조 중 "배열"을 사용하면 유용하다

 

[1] 배열 선언

// 빈 배열
let arr = new Array();
let arr = [];

// 초기 요소 선언
let fruits = ["체리", "사과", "앵두"];

alert( fruits[0] );	// 체리
alert( fruits[1] );	// 사과
alert( fruits[2] );	// 앵두

// 요소 수정
fruits[2] = '배';

alert( fruits[2] );	// 배

 

[2] 배열 요소의 자료형엔 제약이 없다

// 요소에 여러가지 자료형이 섞여있음
let arr = ['사과', { name: '이보라' }, true, function() {alert('안녕하세요');} ];

alert( arr[1].name );	// 이보라

arr[3]();	// 안녕하세요.

 

[3] pop, push, shift, unshift

  • push : 맨 끝에 요소를 추가
  • pop : 배열 끝 요소를 제거하고, 제거한 요소를 반환
  • shift : 배열 앞 요소를 제거하고, 제거한 요소를 반환(인덱스도 한칸씩 당겨짐)
  • unshift : 배열 앞에 요소를 추가(인덱스도 한칸씩 당겨짐)
let fruits = ["사과", "오렌지", "배"];

alert( fruits.pop() );	// 배
alert( fruits );	// 사과, 오렌지

==========================================
let fruits = ["사과", "오렌지"];

fruits.push("배");
alert( fruits );	// 사과, 오렌지, 배

==========================================
let fruits = ["사과", "오렌지", "배"];

alert( fruits.shift() );	// 사과
alert( fruits );	// 오렌지, 배

[4] 반복문

1. for문을 사용하여 순회할 때에는 인덱스 사용하기
2. for..of문은 인덱스는 얻을 수 없고 값만 얻을 수 있다
3. for..in문은 배열엔 되도록 자제. 사용할 땐 특별히 필요한 경우에 사용하기

[5] 'length' 프로퍼티

let fruits = [];
fruits[123] = "사과";

alert( fruits.length );	// 124

====================================
let arr = [1, 2, 3, 4, 5];

arr.length = 2;
alert( arr );	// [1, 2]

arr.length = 5;
alert( arr[3] );	// undefined

====================================
let arr = new Array(2);

alert( arr[0] );	// undefined

alert( arr.length );	// 2

[6] 다차원 배열

let matrix = [
   [1, 2, 3],
   [4, 5, 6],
   [7, 8, 9]
];

alert( matrix[1][1] );	// 5

[7] toString

   : 배열의 toString메서드를 사용하면 요소를 쉼표로 구분한 문자열이 반환