오늘부터 알고리즘을 풀기 시작했는데 아직 많이 부족해서 모든 게 어렵고 새롭다😢
어떤 것부터 공부해야할지 막막하지만 우선은 차근차근 풀어보면서 알게된 내용들을 정리해본다.
reduce() 메서드는 오늘 처음 알게 됐는데 굉장히 쓸 곳이 많은 메서드였다.
사용 예시는 이렇다 !
const array1 = [1, 2, 3, 4];
const reducer = (previousValue, currentValue) => previousValue + currentValue;
// 1 + 2 + 3 + 4
console.log(array1.reduce(reducer));
// expected output: 10
// 5 + 1 + 2 + 3 + 4
console.log(array1.reduce(reducer, 5));
// expected output: 15
그림으로 설명하자면 요런느낌!
(발그림;)
화살표 함수
를 통해서도 사용할 수 있다!
[0, 1, 2, 3, 4].reduce( (prev, curr) => prev + curr );
화살표 함수 표현(arrow function expression)은 전통적인 함수표현(function)의 간편한 대안이지만 몇 가지 제한점이 있고 모든 상황에 사용할 수는 없다.
(param1, param2, …, paramN) => { statements }
(param1, param2, …, paramN) => expression
// 다음과 동일함: => { return expression; }
// 매개변수가 하나뿐인 경우 괄호는 선택사항:
(singleParam) => { statements }
singleParam => { statements }
// 매개변수가 없는 함수는 괄호가 필요:
() => { statements }
흐암 너무 졸리니까 오늘은 여기까지!