C#, .NET Core, React - Project [7]

yoneeki·2024년 5월 2일

dotNetReact

목록 보기
7/7

Reduce Function

  • 자바스크립트는 배열을 다루는 편리한 함수를 많이 제공한다. 그래서 이걸 한번에 좀 정리해보자면!
  • map은 배열을 받고 특정 조건에 따라 새로운 배열을 만들어서 반환해주고 (파라미터 : 새로운 반환값)
  • filter는 조건에 맞는 녀석들만 배열 안에서 필터링해서 걸러서 반환해주고 (파라미터 : boolean - 여기에 맞는 애들만 포함시켜라)
  • Array.prototype.reduce()는 JavaScript 배열의 각 요소에 대해 제공된 함수를 실행하고 하나의 결과 값을 반환한다. 왜 리듀스냐! 이 함수는 배열의 모든 요소를 하나의 값으로 "줄여"나가는 데 사용되기 때문이다!(파라미터 : 누적값과 현재값)
    • 누적값(accumulator): 이 값은 콜백 함수의 반환 값이 누적되는 변수. 리듀스 함수는 각 요소에 대해 콜백 함수를 실행할 때 이 값이 갱신.
    • 현재값(currentValue): 배열의 현재 요소. 리듀스 함수가 배열을 순회하며 각 요소에 대해 콜백 함수를 실행할 때마다 현재 요소가 이 파라미터로 전달.
    • 예를 들어, 배열의 요소를 합산하는 리듀스 함수의 경우, 누적값은 각 요소를 합산한 총합이 되고, 현재값은 배열의 현재 요소가 됨. 각 요소마다 누적값에 현재값을 더한 후 새로운 누적값으로 업데이트되고, 이런식으로 배열의 모든 요소를 처리하면 최종적으로는 하나의 값으로 축소.
// 예시 배열
const numbers: number[] = [1, 2, 3, 4, 5];

// map(): 각 요소를 제곱하여 새로운 배열 생성
const squaredNumbers: number[] = numbers.map(num => num ** 2);
console.log("Squared Numbers:", squaredNumbers); // 출력: [1, 4, 9, 16, 25]

// filter(): 짝수만 필터링하여 새로운 배열 생성
const evenNumbers: number[] = numbers.filter(num => num % 2 === 0);
console.log("Even Numbers:", evenNumbers); // 출력: [2, 4]

// reduce(): 모든 요소를 합산하여 총합 계산
const sum: number = numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0);
console.log("Sum:", sum); // 출력: 15

React Calendar

Clean Architecture Pattern

  • 다시 한번 3편에서 이미 언급했던 클린아키텍쳐를 살펴보자면, 요점은 이것이다. 유즈 케이스(어플리케이션 레이어)는 API가 어떤지 어떤 테크닉으로 데이터를 가져오는지 등등을 신경 쓸 필요도 알 필요도 없어야 한다는 것이다.

Validation

ApiController Attribute

Fluent Validation

docs

profile
Working Abroad ...

0개의 댓글