JavaScript(및 React)에서 `reduce` 메서드를 사용하는 방법
11596 단어 reducees5javascript
감소란 무엇인가
배열과 함께 사용할 수 있는 for..each
및 map
와 같은 JavaScript의 ES5 메서드입니다.
차이점은 다음과 같습니다.
reduce 사용의 간단한 예
reduce
를 사용하여 배열의 합계를 계산하는 간단한 예를 살펴보겠습니다.
어레이가 있다고 상상해 보십시오: [98,45,33,47,100,80]
다음 코드를 작성하여 reduce
메서드를 사용하여 이 배열의 값을 합산할 수 있습니다.
const scores = [98,45,33,47,100,80];
const totalScores = scores.reduce(
(previousScore, currentScore, index)=>previousScore+currentScore,
0);
console.log(totalScores); //returns 403
코드에서 일어나는 일은 다음과 같습니다.
const scores = [98,45,33,47,100,80];
const totalScores = scores.reduce(
(previousScore, currentScore, index)=>previousScore+currentScore,
0);
console.log(totalScores); //returns 403
reduce
에서 scores
메서드를 호출합니다. previous
값, current
값 및 index
에 액세스할 수 있습니다.*이 예에서는
index
를 사용하지 않습니다. accumulator
의 초기 값으로 0을 보냅니다. currentScore
는 98), previousScore
는 콜백 함수로 전송된 값이 0이라고 가정합니다. totalScores
의 결과는 403입니다. accumulator
의 초기 값을 100으로 변경하면 totalScores
의 값이 503으로 변경됩니다.const scores = [98,45,33,47,100,80];
const totalScores = scores.reduce(
(previousScore, currentScore, index)=>previousScore+currentScore,
100);
console.log(totalScores); //returns 503
리액트에서 리듀스 사용하기
App
구성 요소에 다음과 같은 데이터 구조가 있다고 가정합니다.
const course = {
name: 'Half Stack application development',
parts: [
{
name: 'Fundamentals of React',
exercises: 10,
id: 1
},
{
name: 'Using props to pass data',
exercises: 7,
id: 2
},
{
name: 'State of a component',
exercises: 14,
id: 3
}
]
}
Total
구성 요소에 총 운동 수를 표시하려면:
App
에서
const course = {
name: 'Half Stack application development',
parts: [
{
name: 'Fundamentals of React',
exercises: 10,
id: 1
},
{
name: 'Using props to pass data',
exercises: 7,
id: 2
},
{
name: 'State of a component',
exercises: 14,
id: 3
}
]
}
parts
에 소품으로 Total
보내기: Total
의 reduce
의 parts
메서드를 호출합니다. parts
에는 name
, exercises
및 id
여러 값이 포함되어 있습니다. exercises
를 명시적으로 지정합니다. App.js
:import React, { useState } from "react";
import ReactDOM from "react-dom";
import Total from "./components/Total";
const App = () => {
const course = {
name: "Half Stack application development",
parts: [
{
name: "Fundamentals of React",
exercises: 10,
id: 1
},
{
name: "Using props to pass data",
exercises: 7,
id: 2
},
{
name: "State of a component",
exercises: 14,
id: 3
}
]
};
return (
<div>
<Total parts={course.parts} />
</div>
);
};
ReactDOM.render(<App />, document.getElementById("root"));
Total.js
:import React from "react";
const Total = props => {
const total = props.parts.reduce(
(prevValue, currentValue) => prevValue + currentValue.exercises,
0
);
return <p>Totalzzz: {total}</p>;
};
export default Total;
도움이 되었기를 바랍니다!
Reference
이 문제에 관하여(JavaScript(및 React)에서 `reduce` 메서드를 사용하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/yogesnsamy/how-to-use-the-reduce-method-in-javascript-and-react-5dhl텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)