Home  >  Article  >  Web Front-end  >  Utilizing reduce, map, and filter for Data Processing in React Project

Utilizing reduce, map, and filter for Data Processing in React Project

WBOY
WBOYOriginal
2024-08-28 06:10:32554browse

Memanfaatkan reduce, map, dan filter untuk Pengolahan Data dalam React Project

In the approximately 5 years I have worked as a web developer, these 3 array functions are the ones I use most often to manage data and interact with arrays. For the React project itself, these 3 array functions are very powerful for data processing, here are more or less effective uses of these 3 functions.

Map for renderList

import React from 'react';

const users = ['Alice', 'Bob', 'Charlie'];

function UserList() {
  return (
    <ul>
      {users.map((user, index) => (
        <li key={index}>{user}</li>
      ))}
    </ul>
  );
}

export default UserList;

Filters for conditional rendering

import React from 'react';

const users = ['Al', 'Bob', 'Charlie'];

function UserList() {
  const filteredUsers = users.filter(user => user.length > 3);

  return (
    <ul>
      {filteredUsers.map((user, index) => (
        <li key={index}>{user}</li>
      ))}
    </ul>
  );
}

export default UserList;

Reduce to Compute Data

import React from 'react';

const products = [
  { id: 1, name: 'Laptop', price: 1500 },
  { id: 2, name: 'Phone', price: 800 },
  { id: 3, name: 'Tablet', price: 1200 }
];

function TotalPrice() {
  const totalPrice = products.reduce((acc, product) => acc + product.price, 0);

  return (
    <div>
      <h2>Total Price: ${totalPrice}</h2>
    </div>
  );
}

export default TotalPrice;

Combining map, filter, and reduce in React

import React from 'react';

const products = [
  { id: 1, name: 'Laptop', price: 1500, discount: 200 },
  { id: 2, name: 'Phone', price: 800, discount: 50 },
  { id: 3, name: 'Tablet', price: 1200, discount: 100 }
];

function DiscountedProducts() {
  const discountedProducts = products.filter(product => product.discount > 0);
  const totalDiscount = discountedProducts.reduce((acc, product) => acc + product.discount, 0);

  return (
    <div>
      <h2>Total Discount: ${totalDiscount}</h2>
      <ul>
        {discountedProducts.map(product => (
          <li key={product.id}>{product.name} - Discount: ${product.discount}</li>
        ))}
      </ul>
    </div>
  );
}

export default DiscountedProducts;

Conclusion

In React applications, map, filter, and reduce are not only tools for manipulating data, but also ways to render the UI dynamically and efficiently. By understanding and mastering these functions, we can create applications that are more modular, easy to read, and scalable. So, keep exploring and implementing these functions in our React projects for maximum results

The above is the detailed content of Utilizing reduce, map, and filter for Data Processing in React Project. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:JavaScript Event LoopNext article:JavaScript Event Loop