You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React中访问数组对象属性返回undefined?求解决办法

问题分析与解决

你犯了两个关键错误:

  • employees是数组类型,不是单个对象,直接访问employees.fullName必然返回undefined——数组本身没有fullName属性,你需要访问数组内的具体元素(比如通过索引)或者遍历数组获取每个对象的属性。
  • JSX中的<h1/>标签闭合错误,正确的闭合方式是</h1>,错误的闭合会导致页面渲染异常。

解决方式1:显示单个员工的信息

如果只需要展示某一个员工的全名,通过数组索引访问对应对象即可:

import React from 'react'

function App(){

  const [employees, setemployees] = React.useState([{
    id: 1,
    fullName: "Bob Jones",
    designation: "JavaScript Developer",
    gender: "male",
    teamName: "TeamA"
  },
  {
    id: 2,
    fullName: "Jill Bailey",
    designation: "Node Developer",
    gender: "female",
    teamName: "TeamA"
  },
  {
    id: 3,
    fullName: "Gail Shepherd",
    designation: "Java Developer",
    gender: "female",
    teamName: "TeamA"
  }]);

// 打印第一个员工的全名
console.log(employees[0].fullName)
  return( 
    <main>
        <h1>{employees[0].fullName}</h1>
    </main>
  )
}

export default App

解决方式2:遍历显示所有员工信息

如果要展示全部员工的名字,使用map方法遍历数组(注意给每个列表项添加唯一key属性):

import React from 'react'

function App(){

  const [employees, setemployees] = React.useState([{
    id: 1,
    fullName: "Bob Jones",
    designation: "JavaScript Developer",
    gender: "male",
    teamName: "TeamA"
  },
  {
    id: 2,
    fullName: "Jill Bailey",
    designation: "Node Developer",
    gender: "female",
    teamName: "TeamA"
  },
  {
    id: 3,
    fullName: "Gail Shepherd",
    designation: "Java Developer",
    gender: "female",
    teamName: "TeamA"
  }]);

// 遍历打印所有员工的全名
employees.forEach(emp => console.log(emp.fullName))
  return( 
    <main>
        <h1>员工列表</h1>
        <ul>
            {employees.map(emp => (
                <li key={emp.id}>{emp.fullName}</li>
            ))}
        </ul>
    </main>
  )
}

export default App

内容的提问来源于stack exchange,提问作者Maaz Maavia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 07:22:53