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

为何数组元素取值显示为undefined?附代码及截图

问题描述

控制台输出截图

我无法弄清楚为何无法从数组中获取信息:

const usedPlatformLog: Date[] = []
users.forEach(el => {
    usedPlatformLog.push(el.lastUsed)
})
console.log(usedPlatformLog) // 显示包含索引0和1的数组(已附截图)
console.log(usedPlatformLog[0]) // 日志返回undefined

排查方向

  • 在forEach循环里加console.log(el.lastUsed),确认每次push的具体值,看是不是本身就是undefined。
  • 浏览器控制台存在异步更新特性:你看到的数组内容可能是后续才填充的,打印usedPlatformLog[0]时数组实际为空。换成console.log(JSON.stringify(usedPlatformLog)),能看到代码执行时数组的真实状态。
  • 检查users的获取逻辑,如果是异步请求返回的数据,要确保这段代码在数据加载完成后执行,比如放在then回调或者await之后。
  • 类型定义不代表实际值,确认users里的每个元素确实有lastUsed属性,且值不为undefined。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 15:15:42