개인적으로 공부하면서 기록하는 공간으로
잘못된 정보는 댓글을 통해 알려주시면 감사하겠습니다 :-)
▪ ▪ ▪ ▪ ▪
배열(Array) 이란?
배열은 이름과 인덱스로 참조되는 정렬된 값의 집합이다.
배열을 구성하는 각각의 값을 element, 배열에서의 위치를 가르키는 숫자를 index라고 한다.
이 때, index는 문자열을 사용할 수 없으며 정수만을 허용한다.
배열 생성
배열을 만드는 방법은 크게 2가지가 있다.
1. 배열 리터럴 [] 사용
형식) let 배열명 = [배열요소1, 배열요소2, 배열요소3];
// 방법 1) 초기값을 할당하여 배열 생성
let arr1 = ['first', 'second', 'third'];
console.log(arr1);
// 방법 2) 빈 배열 생성 후 배열값 입력
let arr2 = [];
arr2[0] = 'first';
arr2[1] = 'second';
arr2[2] = 'third';
console.log(arr2);
// 방법 3) 배열 크기를 지정하고 배열 생성
let arr3 = [,,,];
arr3[0] = 'first';
arr3[1] = 'second';
arr3[2] = 'third';
console.log(arr3);
2. 생성자 함수 (new Array()) 사용
형식) let 배열명 = new Array(배열요소1, 배열요소2, 배열요소3);
// 방법 1) 초기값을 할당하여 배열 생성
let arr1 = new Array('fisrt', 'second', 'third');
console.log(arr1);
// 방법 2) 빈 배열 생성 후 배열값 입력
let arr2 = new Array();
arr2[0] = 'first';
arr2[1] = 'second';
arr2[2] = 'third';
console.log(arr2);
// 방법 3) 배열 크기를 지정하고 배열 생성
let arr3 = new Array(3);
arr3[0] = 'first';
arr3[1] = 'second';
arr3[2] = 'third';
console.log(arr3);
배열 참조
배열 내 특정 요소를 알고싶은 경우 [] 안에 index를 입력하여 사용한다.
형식) let str = 배열명[index];
// 배열 생성 생략
// 배열 길이 구하기
var arrayLength = arr.legnth;
// 배열의 0번째 인덱스 값 구하기
var arrayIndex0 = arr[0];
// 배열의 마지막 요소 구하기
var arrayLastValue = arr[arr.length-1]
배열 요소 추가
배열에 새로운 배열요소를 추가하는 방법이다.
1. 배열의 마지막에 배열 요소 추가
방법 1. push() 사용
형식) 배열명.push("추가할데이터")
let arr = ["first", "second", "third"]
arr.push("fourth");
console.log(arr);
방법 2. length 프로퍼티 사용
형식) 배열명[배열명.length] = "추가할데이터"
let arr = ["first", "second", "third"]
arr[arr.length] = "fourth";
console.log(arr);
2. 배열의 맨 앞에 배열 요소 추가 :: unshift()
형식) 배열명.unshift("추가할데이터")
let arr = ['first', 'second', 'third'];
arr.unshift('fourth');
console.log(arr);
3. 특정 위치에 배열요소 추가 :: 배열명[n]
형식) 배열명[추가할위치] = "추가할데이터"
let arr = ['first', 'second', 'third'];
arr[4] = 'fourth';
console.log(arr);
배열의 길이보다 큰 인덱스 위치에 배열요소를 추가할 경우, 지정되지 않은 인덱스에는 값이 정의 되지 않은 undefined 요소가 생성된다.
배열 요소 삭제
배열요소를 삭제하는 방법이다.
1. 배열의 마지막 요소 삭제
방법 1. pop() 사용
형식) 배열명.pop()
let arr = ['first', 'second', 'third'];
console.log('pop() before: ', arr);
arr.pop();
console.log('pop() after: ', arr);
방법 2. length 프로퍼티 사용
형식) 배열명.length = 배열명.length - 1
let arr = ['first', 'second', 'third'];
console.log('length-1 before: ', arr);
arr.length = arr.length - 1;
console.log('length-1 after: ', arr);
2. 배열의 첫 번째 요소를 제거 :: shift()
형식) 배열명.shift()
let arr = ['first', 'second', 'third'];
console.log('shift() before: ', arr);
arr.shift();
console.log('shift() after: ', arr);
3. 특정 위치에 배열요소 여러개 제거 :: splice()
형식) 배열명.splice('인덱스', '제거할 요소의 갯수')
let arr = ['first', 'second', 'third', 'fourth', 'fifth'];
console.log('splice() before: ', arr);
arr.splice(1, 2);
console.log('splice() after: ', arr);
Reference
✔ http://www.tcpschool.com/javascript/js_array_basic