array(3)
-
[Array - VanillaJS] 배열 만들어보기
class myArray { constructor() { this.length = 0; this.data = {}; } get(index) { return this.data[index] } push(item) { this.data[this.length] = item; this.length++; } pop() { const data = this.data[this.length-1]; delete this.data[this.length-1]; this.length--; return data; } delete(index) { const item = this.data[index]; this.shiftItems(index); } shiftItems(index) { for (let i=index; i
2020.05.21 -
[Array] 배열, 정적배열, 동적배열
배열 : 연속된 메모리 공간에 같은 자료형의 데이터를 저장하는 방식. "인덱스"로 관리하기 때문에 다음과 같은 특징이 있다. 탐색 : 유리 O(1) 맨 마지막 위치에 삽입: 정적배열=>유리 O(1) / 동적배열에서메모리초과시=>불리 O(n) 맨 마지막 위치의 원소 삭제: 유리 O(1) 업데이트(원하는 위치에 삽입/삭제) : 불리 O(n) Static Array Dynamic Array 특징 배열을 정의할 때부터 길이를 정하기 때문에 고정됨 개발자가 메모리 관리할 수 있음 길이를 초과하게 되면 할당할 메모리를 새로 늘리고 이전 정보를 복붙해서 이어나감(보통 기존 크기의 2배로 옮김) 길이변화에 유연하지만, 메모리 관리에 소홀함 언어 저레벨 언어(C++) 고레벨 언어(Python-List, JS-Array,..
2020.05.21 -
[Array Functions] forEach의 상향버전 : map, filter, reduce, find, findIndex
배열은 자료형이 같은 원소들이 차례대로 번호표를 부여받아 저장되어 있기 때문에, 내부를 탐색하여 가공하는 과정에서는 반복문이 활용되기 마련이다. JavaScript에서는 이러한 배열을 쉽게 요리할 수 있도록 다양한 레시피가 준비되어 있다. 예제를 통해 확인해보자. 아래와 같이 numbers라는 배열이 하나 있다. const numbers = [37, 96, 41, 9, 15, 26, 1, 72]; 1. 100씩 곱하는 가장 원시적인 방법 => for Loop for ( let i = 0; i forEach const newNumbers = ..
2020.05.20