Bird
Raised Fist0
Reactframework~5 mins

Keys concept in React - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of keys in React lists?
Keys help React identify which items have changed, been added, or removed. They make updates faster and keep UI consistent.
Click to reveal answer
beginner
Why should keys be unique among siblings in a list?
Unique keys prevent React from mixing up elements. If keys repeat, React may reuse wrong elements causing bugs.
Click to reveal answer
intermediate
Is using array index as a key always a good idea? Why or why not?
Using index as key is okay only if list items never change order or get removed. Otherwise, it can cause wrong UI updates.
Click to reveal answer
beginner
What happens if you forget to add keys to list items in React?
React will warn you in the console. Without keys, React can't track items well, leading to slower updates and possible UI glitches.
Click to reveal answer
intermediate
How do keys affect React's reconciliation process?
Keys let React match old and new elements during reconciliation. This helps React update only changed parts efficiently.
Click to reveal answer
What should a key in a React list be?
AUnique among siblings
BThe same for all items
CA random number every render
DAlways the array index
What is a risk of using array index as a key when list items change order?
AReact may reuse wrong elements causing UI bugs
BNo risk, it's always safe
CIt makes React slower
DIt causes syntax errors
If you forget keys in a list, what will React do?
ACrash the app
BShow a warning in the console
CAutomatically add keys
DIgnore the list
Keys help React to:
AStyle the list items
BFetch data from server
CHandle user input
DIdentify which items changed during updates
Which of these is a good choice for a key?
ARandom number generated on render
BCurrent timestamp
CUser ID from database
DArray index when list changes often
Explain why keys are important in React lists and what can go wrong if keys are missing or not unique.
Think about how React updates list items efficiently.
You got /4 concepts.
    Describe when it is okay and not okay to use array index as a key in React lists.
    Consider what happens when list items move around.
    You got /3 concepts.

      Practice

      (1/5)
      1. Why does React require keys when rendering lists with map()?
      easy
      A. To uniquely identify each list item for efficient updates
      B. To style each list item differently
      C. To sort the list items automatically
      D. To prevent the list from rendering

      Solution

      1. Step 1: Understand React's list rendering

        React uses keys to track each item in a list so it can update only changed items instead of re-rendering the whole list.
      2. Step 2: Identify the purpose of keys

        Keys must be unique and stable to help React identify which items changed, were added, or removed.
      3. Final Answer:

        To uniquely identify each list item for efficient updates -> Option A
      4. Quick Check:

        Keys = Unique IDs for list items [OK]
      Hint: Keys uniquely identify list items for React updates [OK]
      Common Mistakes:
      • Thinking keys are for styling
      • Believing keys sort the list
      • Assuming keys prevent rendering
      2. Which of the following is the correct way to assign keys in a React list?
      easy
      A. {items.map(item => <li key={index}>{item.name}</li>)}
      B. {items.map(item => <li key={item.id}>{item.name}</li>)}
      C. {items.map(item => <li key={Math.random()}>{item.name}</li>)}
      D. {items.map(item => <li>{item.name}</li>)}

      Solution

      1. Step 1: Check key uniqueness and stability

        Using item.id ensures each key is unique and stable across renders.
      2. Step 2: Evaluate other options

        Using index or Math.random() can cause unstable keys leading to rendering bugs. Omitting keys causes React warnings.
      3. Final Answer:

        {items.map(item => <li key={item.id}>{item.name}</li>)} -> Option B
      4. Quick Check:

        Use stable unique IDs as keys [OK]
      Hint: Use unique stable IDs, not index or random, for keys [OK]
      Common Mistakes:
      • Using array index as key when list changes
      • Using random values for keys
      • Not providing any key
      3. What will be the output in the console when this React code runs?
      const items = [
        { id: 1, name: 'Apple' },
        { id: 2, name: 'Banana' },
        { id: 3, name: 'Cherry' }
      ];
      
      const list = items.map(item => <li key={item.id}>{item.name}</li>);
      console.log(list.length);
      medium
      A. 3
      B. undefined
      C. 0
      D. Error

      Solution

      1. Step 1: Understand the map function output

        The map creates an array of 3 <li> React elements, one for each item.
      2. Step 2: Check the length of the array

        The array list has 3 elements, so list.length is 3.
      3. Final Answer:

        3 -> Option A
      4. Quick Check:

        Array length equals number of items mapped [OK]
      Hint: map returns array same length as input [OK]
      Common Mistakes:
      • Confusing React elements with strings
      • Expecting undefined from map
      • Thinking keys affect array length
      4. Identify the problem in this React code snippet:
      const items = ['A', 'B', 'C'];
      
      return (
        <ul>
          {items.map((item, index) => (
            <li key={index}>{item}</li>
          ))}
        </ul>
      );
      medium
      A. map function syntax is incorrect
      B. Missing unique key prop causes error
      C. Using index as key can cause bugs if list changes
      D. List items should be wrapped in a div

      Solution

      1. Step 1: Analyze key usage

        Using array index as key works only if list never changes order or items.
      2. Step 2: Understand potential bugs

        If items are added, removed, or reordered, React may reuse wrong elements causing UI bugs.
      3. Final Answer:

        Using index as key can cause bugs if list changes -> Option C
      4. Quick Check:

        Index keys cause bugs on list changes [OK]
      Hint: Avoid index keys if list can reorder or change [OK]
      Common Mistakes:
      • Thinking index keys are always safe
      • Believing missing keys cause syntax errors
      • Assuming map syntax is wrong
      5. You have a list of users with possible duplicate names:
      const users = [
        { id: 1, name: 'Sam' },
        { id: 2, name: 'Alex' },
        { id: 3, name: 'Sam' }
      ];
      
      return (
        <ul>
          {users.map(user => <li key={user.name}>{user.name}</li>)}
        </ul>
      );

      What problem might occur and how to fix it?
      hard
      A. Wrap list in a fragment to fix duplicate keys
      B. No problem; keys can be duplicate if names match
      C. Keys must be numbers; convert names to numbers
      D. Duplicate keys from same names cause rendering bugs; use user.id as key

      Solution

      1. Step 1: Identify duplicate keys

        Using user.name as key causes duplicates because 'Sam' appears twice.
      2. Step 2: Fix by using unique stable keys

        Use user.id which is unique for each user to avoid React key conflicts.
      3. Final Answer:

        Duplicate keys from same names cause rendering bugs; use user.id as key -> Option D
      4. Quick Check:

        Keys must be unique; use unique IDs [OK]
      Hint: Keys must be unique; avoid duplicates like same names [OK]
      Common Mistakes:
      • Assuming keys can be duplicated
      • Thinking keys must be numeric only
      • Trying to fix keys by wrapping in fragments
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard