Chapter 6: Map Method in React - Simple React - IndianTechnoEra
Latest update Android YouTube

Chapter 6: Map Method in React - Simple React

Introduction

The map() method in React is a powerful tool used for iterating over arrays and transforming each element based on a provided function. 

It is commonly used to generate lists of elements or apply operations to each item in an array. 

In this blog, we'll delve into the details of the map() method and explore various examples with different types of data.


Purpose: render lists from array data

jsx elements: transform array items into jsx

inline rendering: directly inside jsx

{items.map(item =><li key={item.id}>{item.name}</li>)}


key prop: assign unique key for optimized re-renders 

<div key={item.id}>{item.name}</div>


Basic Usage of the map() Method

The map() method takes a callback function as an argument and applies it to each element of the array. 

It then returns a new array containing the results of applying the callback function to each element.


        const originalArray = [1, 2, 3, 4, 5];

        const newArray = originalArray.map((item) => {
          return item * 2;
        });

        // newArray is now [2, 4, 6, 8, 10]
      

Example 1: Mapping over an Array of Strings

Let's create a React component that renders paragraphs for each name in an array of strings.


        import React from 'react';

        const StringListComponent = () => {
          const names = ['Alice', 'Bob', 'Charlie'];

          const formattedNames = names.map((name, index) => {
            return (
              <p key={index}>Hello, {name}!</p>
            );
          });

          return (
            <div>
              {formattedNames}
            </div>
          );
        };

        export default StringListComponent;
      

Example 2: Mapping over an Array of Objects

Let's create a React component that renders user information for each object in an array of users.


        import React from 'react';

        const ObjectListComponent = () => {
          const users = [
            { id: 1, name: 'John' },
            { id: 2, name: 'Jane' },
            { id: 3, name: 'Doe' }
          ];

          const userComponents = users.map((user) => {
            return (
              <div key={user.id}>
                <p>User ID: {user.id}</p>
                <p>Name: {user.name}</p>
              </div>
            );
          });

          return (
            <div>
              {userComponents}
            </div>
          );
        };

        export default ObjectListComponent;
      

Example 3: Mapping over an Array of Numbers to Create a List

Let's create a React component that renders a list using numbers from an array.


        import React from 'react';

        const NumberListComponent = () => {
          const numbers = [1, 2, 3, 4, 5];

          const numberList = numbers.map((number) => {
            return (
              <li key={number}>{number}</li>
            );
          });

          return (
            <ul>
              {numberList}
            </ul>
          );
        };

        export default NumberListComponent;
      

Example 4: Mapping over an Array of JSX Elements

Let's create a React component that renders emoji elements using an array of JSX elements.


        import React from 'react';

        const EmojiListComponent = () => {
          const elements = ['🌞', '🌈', '🌺'];

          const emojiList = elements.map((emoji, index) => {
            return (
              <span key={index}>{emoji}</span>
            );
          });

          return (
            <div>
              {emojiList}
            </div>
          );
        };

        export default EmojiListComponent;
      


The map() method is a versatile tool in React for transforming and rendering arrays of data. Whether you're working with strings, objects, numbers, or JSX elements, the map() method provides a clean and efficient way to iterate over data and generate dynamic content in your React applications.

Post a Comment

Feel free to ask your query...
Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.