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

如何在map函数中存储生成日期 解决endDate存为数组、forEach返回undefined问题

问题原因

  1. 你当前的代码直接将完整的this.final日期数组赋值给了每个子项的endDate字段,所以所有子项的endDate都会存储数组格式的全量日期,而非对应单个日期。
  2. forEach方法本身没有返回值,所以你尝试用forEach处理后直接赋值会得到undefined,需要生成新数组的场景优先使用map方法。

解决方案

如果this.final数组的顺序和underageChildInfo数组的顺序一一对应,直接使用map方法的第二个下标参数获取对应位置的单个日期即可:

console.log(this.final); // ["2033-05-19T20:00:00.000Z", "2025-11-04T11:26:28.316Z"]

this.personalInfo = {
  personalInfoId: 0,
  underageChildInfo: this.data.underageChildInfo?.map((i, index) => ({
    firstName: i.name,
    endDate: this.final[index]
  }))
};

如果两个数组顺序不匹配,需要按关联规则匹配对应日期,可以用find方法做匹配:

underageChildInfo: this.data.underageChildInfo?.map((i) => ({
  firstName: i.name,
  // 替换为你实际的匹配逻辑即可
  endDate: this.final.find(date => /* 匹配规则 */)
}))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 22:36:03