let arr=new Array(); // 방법1
let arr =[]; // 방법2
위 문법을 사용하면,
배열을 생성할 수 있다.
배열은 큐, 스택 구조를 구현할 때 쓰인다.
1. pop()
: 배열 끝 요소를 제거하고, 제거한 요소를 반환한다.
2. push(x1,x2...)
: 배열 끝에 요소를 추가한다.
3. shift()
: 배열 앞 요소를 제거하고 반환한다.
4. unshift(x1,x2...)
: 배열 앞에 요소를 추가한다.
※ push와 pop의 속도가
shift와 unshift보다 훨씬 빠르다
배열 내부 동작 원리!
> 배열의 본질은 객체이다.
> 원시형이 아니다.
> 배열은 객체와 마찬가지로 참조를 통해 복사된다.
> 배열은 순서가 있는 자료를 저장하는 용도로 만들어졌기에,
임의의 키를 사용해야 한다면 배열보단 [{}가 적합하다.
- length 프로퍼티
> array 생성자의 길이 속성이다.
> 배열 내 요소의 개수를 나타내는 것이 아니라,
가장 큰 인덱스에 1을 더한 값이다.
※ 자바스크립트 개념
js에는 클래스라는 개념이 없어서
기존의 객체를 복사하여
새로운 객체를 생성하는 프로토타입 기반의 언어
프로토타입 기반 언어는
객체 원형인 프로토타입을 이용하여 새로운 객체를 만들어낸다.
참고 출처
// 배열과 관련된 연산 문제
let styles=['Jazz','Blues'];
styles.push('Rock-n-Roll');
styles[Math.floor((styles.length-1)/2)]="Classics";
print(styles.shift());
print(styles.unshift('Rap','Reggae');
pop,push,shift,unshift 말고도 메서드가 더 있다.
배열의 다양한 메서드!
1. splice
> 이 메서드를 사용하면,
요소의 추가, 삭제, 교체가 모두 가능하다!
배열.splice(index,deletecount, elem1,...elemM]
let arr=['I','study','JavaScript'];
arr.slice(1,2);
alert(arr); // ["I"]
arr.slice(1,0,"hello");
alert(arr)' // ["I","hello"]
참고로, splice는!
삭제된 요소로 구성된 배열을 반환한다.
2. slice
splice보다 훨씬 간단하다.
start 인덱스부터, end를 제외한 인덱스까지의 요소를 복사한
새로운 배열을 반환한다.
arr.slice(start,end);
이런 방식은!
기존의 배열을 건드리지 않고 조작해서
새로운 배열을 만들고자 할 때 자주 사용된다.
ko.javascript.info/array-methods
'여니의 프로그래밍 study > JavaScript' 카테고리의 다른 글
[BootStrap] Bootstrap의 모든 것 (0) | 2022.09.02 |
---|---|
[Javascript] 객체를 원시형으로 변환하기 (0) | 2021.03.25 |
[Javascript] 심볼형에 대해 알아보기 (0) | 2021.03.25 |
4-4 메서드와 'this' (Javascript) (0) | 2021.03.11 |
4-3 가비지 컬렉션 (Javascript) (3) | 2021.03.11 |