Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 주요 네트워크 종류
- AWS Spring MySQL Redis
- Java 로드맵
- http 변화
- 스프링 값 받아오기
- Test NullPointerException
- php 통신구조
- 테스트 필드주입 Null
- 배열 컬렉션 변환
- 화살표 함수 this
- php 통신흐름
- 데이터베이스 설계 순서
- Java Roadmap
- 네트워크 구성 요소
- http 버전별 단점
- ajax 특징
- ajax 단점
- jwt 탄생배경
- mod_php vs php-fpm
- php 통신
- 데이터베이스 언어 종류
- 컬렉션 배열 변환
- ajax 통신
- unknown database
- jwt 특징
- 스프링 데이터 전달
- AWS EC2 Spring 서버
- http 버전별 개선점
- ajax 장점
- 스프링 HTTP 통신
Archives
- Today
- Total
zkvn99
[JavaScript] 배열 본문
배열 - 여러 개의 값을 순차적으로 나열한 자료구조 (자바스크립트에선 객체 타입)
기본형
let student = ['Jack','Maria','James','John'];
배열이 가지고 있는 값은 요소이며, 각 요소는 자신의 위치를 나타내는 0 이상의 정수를 고유번호로 가짐 (index)
배열은 문자 뿐만 아니라, 숫자, 객체, 함수 등도 포함할 수 있음
let arr = [
‘민욱’, // 문자
5, // 숫자
false, // boolean
{
name : ‘Mike’,
age : 30,
} // 객체
function(){
console.log(‘Test’);
} // 함수
];
배열은 요소의 개수를 세는 length 프로퍼티를 갖고 있고, for 문을 통해 순차적으로 요소에 접근할 수 있다/ length : 배열의 길이
let days = [‘월’, ‘화’, ‘수’];
for(let index = 0; index < days.length; index++){
console.log(days[index]) // 0 ~ 2 까지 반복
}
days.length // 3
배열은 객체랑 비슷하게 사용할 수 있다. (유사 배열 객체)
let array = {
'0' : 'a' ,
'1' : 15 ,
length: 2
};
console.log(array[1]); // 15
배열의 생성 방법 및 참조 ( 배열 리터럴에 요소를 생략하면 희소 배열이 생성 )
배열 리터럴 , Array 생성자 함수 , Array.of() , Array.from
let day = [‘월’,’화’,’수’]; // 생성 배열 리터럴 ['월','화','수'] (length : 3)
const arr = new Array(20); // 생성 Array 생성자 함수 [empty * 20] (length : 20)
Array.of(5, 2, 4); // 생성 Array.of() [5,2,4] (length : 3)
Array.from({length: 3, 0: 'a' , 1: 'b' , 2: 'c'}) // 생성 Array.from() ['a','b','c'] (length : 3)
console.log(day[0]); // 참조 -> 월
console.log(arr[15]); // 참조 -> undefined (존재하지 않는 요소에 접근하면 undefined가 반환)
배열 추가 및 삭제 외 기능들
push() - 배열 끝에 추가
pop() - 배열 끝 요소 제거
shift() - 배열 앞에 제거
unshift() - 배열 앞에 추가
concat() - push, unshift와 유사( 반환값을 변수에 할당받아야 함 )
let days = [‘월’,’화’];
days.push(‘수’) // [‘월’,’화’,’수’] push() 여러 요소를 한번에 추가 가능
days.pop() // [‘월’,’화’] pop() 하나씩 삭제
days.unshift(‘일’) // [‘일’,’월’,’화’] unshift() 여러 요소를 한번에 추가 가능
days.shift() // [‘월’,’화’] shift() 하나씩 삭제
let days1 = days.concat(‘수’,’목’) // [’월’,’화’,'수','목']
delete() - 배열 요소의 삭제
splice() - 배열의 중간에 요소를 추가하거나 제거하는 경우 사용 [원본 변경]
const arr = [1,2,3,4,5]
const arr2 = arr.splice(1, 2, 6, 7); // 인덱스 1부터 2개의 요소를 제거하고 6과 7을 삽입 (제거 후 삽입)
// arr => [1,6,7,4,5]
// arr2 => [2,3]
delete arr2[1]; // 인덱스 1 삭제
// arr2 => [2,empty]
slice() - 인수로 전달된 범위의 요소를 복사하여 배열로 반환
includes() - 배열 요소가 존재하는지 확인
let arr[1,2,3,4];
let arr2 = arr.slice(0, 2); // [1,2] (arr[0]부터 < arr[2]이전까지 복사하여 반환 [원본은 변경x])
let arr3 = arr.slice(2) // [3,4] (arr[2]부터 전부 반환)
let arr4 = arr.slice(-1) // [4] (음수의 경우 배열의 끝부터 시작 [인수가 없으면 배열 그대로 복사])
let arr5 = arr.slice(-2) // [3,4]
console.log(arr.includes(1)); // true
indexOf() - 배열 인덱스 찾기
let arr = [1, 2, 4, 4, 6];
console.log(arr.indexOf(4)); // 2 (배열 arr에서 요소 4를 검색하여 먼저 검색된 요소의 인덱스 반환)
console.log(arr.indexOf(8)); // -1 (요소가 없으면 -1 출력)
console.log(arr.indexOf(6,1)); // 4 (두 번째 인수는 검색을 시작할 인덱스, 생략하면 처음부터 시작)
join() - 배열 연결 [모든 요소를 문자열로 변환 후 연결한 문자열을 반환함]
reverse() - 배열 뒤집기
const arr = [1,2,3,4,5];
arr.join(); // 인수가 없을 경우 콤마로 연결 '1,2,3,4,5'
arr.join(''); // 빈 문자열로 연결 '12345'
arr.join('+'); // + 로 연결 '1+2+3+4+5'
arr.reverse(); // [5,4,3,2,1]
'Language > JavaScript' 카테고리의 다른 글
[JavaScript] 객체 (0) | 2022.11.20 |
---|---|
[JavaScript] 함수 (0) | 2022.11.19 |
[JavaScript] 자료형 (0) | 2022.11.17 |
[JavaScript] 변수 (1) | 2022.11.12 |