
요소 (element): 배열 안에 있는 값
대괄호 안의 각 요소별로 순서를 알려주는 숫자(index)가 매겨짐.
index가 property name의 역할을 함 (index == property name)
let courseRanking = [
'자바스크립트 프로그래밍 기초',
'Git으로 배우는 버전 관리',
'컴퓨터 개론',
'파이썬 프로그래밍 기초'
]
let airportLines = ['인천공항 2터미널', '인천공항 1터미널', '검암', '계양']
index를 통해서 요소에 접근하는 것 (0부터 시작)기본 구조
console.log(배열이름[index])
예시
let courseRanking = [
'자바스크립트 프로그래밍 기초',
'Git으로 배우는 버전 관리',
'컴퓨터 개론',
'파이썬 프로그래밍 기초'
]
console.log(courseRanking[0]);
.
.
.
>>> 자바스크립트 프로그래밍 기초
let courseRanking = [
'자바스크립트 프로그래밍 기초',
'Git으로 배우는 버전 관리',
'컴퓨터 개론',
'파이썬 프로그래밍 기초'
]
console.log(courseRanking[2 + 1]);
.
.
.
>>> 파이썬 프로그래밍 기초
undefined 출력let courseRanking = [
'자바스크립트 프로그래밍 기초',
'Git으로 배우는 버전 관리',
'컴퓨터 개론',
'파이썬 프로그래밍 기초'
]
console.log(courseRanking[5]);
.
.
.
>>> undefined
let members = ['드워프', '렉스', '롭이어']
console.log(typeof members);
.
.
.
>>> object
요소의 총 개수 표시let members = ['드워프', '렉스', '롭이어']
console.log(members.length);
console.log(members['length']);
console.log(members.length - 1); // 배열의 마지막 요소에 접근
.
.
.
>>> 3
3
롭이어
index 순서를 뛰어넘으면서 추가하면 undefined 값이 들어간 요소 자동 생성되니 주의let members = ['드워프', '렉스', '롭이어']
members[3] = '당근'
console.log(members[3]);
.
.
.
>>> 당근
splice method 사용해야 함.let members = ['드워프', '렉스', '롭이어']
console.log(members);
delete members[1];
console.log(members);
.
.
.
>>> [ '드워프', '렉스', '롭이어' ]
[ '드워프', <1 empty item>, '롭이어' ]
splice() 괄호 안에 숫자 하나만 입력하면, 해당 index를 포함한 이후 모든 index를 삭제let members = ['드워프', '렉스', '롭이어']
members.splice(1);
console.log(members);
.
.
.
>>> [ '드워프' ]
let members = ['드워프', '렉스', '롭이어']
console.log(members.splice(1));
.
.
.
>>> [ '렉스', '롭이어' ]
splice( , ) 에서 두 번째 parameter가 삭제할 요소 개수let members = ['드워프', '렉스', '롭이어']
members.splice(1, 2);
console.log(members);
.
.
.
>>> [ '드워프' ]
let members = ['드워프', '렉스', '롭이어', '당근']
console.log(members.splice(1, 2));
.
.
.
>>> [ '렉스', '롭이어' ]
let members = ['드워프', '렉스', '롭이어', '당근']
members.splice(1, 1, '미나리');
console.log(members);
.
.
.
>>> [ '드워프', '미나리', '롭이어', '당근' ]
let members = ['드워프', '렉스', '롭이어', '당근']
members.splice(1, 1, '미나리', '쑥갓');
console.log(members);
.
.
.
>>> [ '드워프', '미나리', '쑥갓', '롭이어', '당근' ]
0으로 설정하면, 요소 추가 가능let members = ['드워프', '렉스', '롭이어', '당근']
members.splice(1, 0, '미나리');
console.log(members);
.
.
.
>>> [ '드워프', '미나리', '렉스', '롭이어', '당근' ]
shift(): 배열의 첫 요소 삭제let members = ['드워프', '렉스', '롭이어', '당근']
members.shift();
console.log(members);
.
.
.
>>> [ '렉스', '롭이어', '당근' ]
pop(): 배열의 마지막 요소 삭제let members = ['드워프', '렉스', '롭이어', '당근']
members.pop();
console.log(members);
.
.
.
>>> [ '드워프', '렉스', '롭이어' ]
unshift(value): 배열의 첫 요소 추가let members = ['드워프', '렉스', '롭이어', '당근']
members.unshift('soshy');
console.log(members);
.
.
.
>>> [ 'soshy', '드워프', '렉스', '롭이어' ]
push(value): 배열의 마지막 요소 추가let members = ['드워프', '렉스', '롭이어', '당근']
members.push('shyboy');
console.log(members);
.
.
.
>>> [ '드워프', '렉스', '롭이어', 'shyboy' ]
indexOf(value): 배열에서 특정 값 찾기value가 배열에 포함되어 있다면, value가 있는 index returnvalue가 배열에 포함되어 있지 않다면, -1 returnvalue가 배열에 여러 번 포함되어 있으면, 처음 발견된 index returnlet brands = ['Google', 'Kakao', 'Naver', 'Kakao'];
console.log(brands.indexOf('Kakao'));
console.log(brands.indexOf('Daum'));
.
.
.
>>> 1
-1
lastIndexOf(value): 배열에서 특정 값 찾기indexOf(value)와 같지만, 탐색 순서가 반대 (뒤에서부터 탐색)let brands = ['Google', 'Kakao', 'Naver', 'Kakao'];
console.log(brands.lastIndexOf('Kakao'));
console.log(brands.lastIndexOf('Daum'));
.
.
.
>>> 3
-1
includes(value): 배열에 특정 값이 있는지 확인value가 있을 경우, true returnvalue가 없을 경우, false returnlet brands = ['Google', 'Kakao', 'Naver', 'Kakao'];
console.log(brands.includes('Kakao'));
console.log(brands.includes('Daum'));
.
.
.
>>> true
false
reverse(value): 배열 뒤집기let brands = ['Google', 'Kakao', 'Naver', 'Kakao'];
console.log(brands);
brands.reverse();
console.log(brands);
.
.
.
>>> (4) ["Google", "Kakao", "Naver", "Kakao"]
(4) ["Kakao", "Naver", "Kakao", "Google"]
의미가 중요하다면, 배열보다는 property를 활용할 수 있는 객체를 만드는 게 더 효과적순서나 위치에 중점을 두는 정보다 필요하다면, 다차원 배열이 효과적let twoDimensional = [[1, 2], [3, 4]];
console.log(twoDimensional[0])
console.log(twoDimensional[0][1])
.
.
.
>>> [ 1, 2 ]
2