2019.06.24

 // 스택 (stack)

 데이터가 들어온 순서대로 쌓여 나중에 넣은 객체가 먼저 빠져나가는 자료구조

 후입선출 혹은 LIFO(Last In First Out)

 push와 pop은 데이터를 수직으로 쌓아 올리는 스택에 해당하는 행동

 // 큐 (queue)

 먼저 넣은 객체가 먼저 빠져나가는 자료구조

 선입선출 혹은 FIFO(First In First Out)

 shift와 unshift는 대기열과 비슷한 큐에 해당하는 행동

 

 push와 unshift는 새 요소를 추가해서 늘어난 길이를 반환하고 pop과 shift는 제거된 요소를 반환한다

 

 

 // 맵 (map)

 일정한 형식의 배열을 다른 형식으로 변형한다. 즉, 원래 배열을 가지고 새로운 배열(데이터)을 만든다

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// ex) map
 
let cart = [{name : "호떡", prcie : 1000}, {name : "마카롱", prcie : 2000}];
let names = cart.map(function(a){
    return a.name;
});
 
console.log(names); // ['호떡','마카롱']
 
let cartPlus = cart.map(function(b){
    b.count = 0;
    return b;
})
 
console.log(cartPlus); // [{name : '호떡', price : 1000, count : 0}, {name : '마카롱', price : 2000, count : 0}]
 

 

 // 리듀스 (reduce)

 map이 배열의 각 요소를 변형한다면 reduce는 배열자체를 변형한다. 즉, 배열을 취합해서 원하는 배열을 만든다

1
2
3
4
5
6
7
8
// ex) reduce
 
const arr = [1,2,3,4];
let result = arr.reduce(function(a, x){
    return a+=x;
}, 0);
 
console.log(result); // 10
 

 

+ Recent posts