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

调用map方法时报TypeError: betsModel.map is not a function的问题排查

报错原因
  • map 是 JavaScript 数组独有的实例方法,你执行 JSON.parse 后得到的 betsModel 是普通键值对对象,不是数组,本身不携带 map 方法,调用就会抛出类型错误。
  • 你解析后的数据结构如下:
{
  "13721": {"IdG":"1","N":"[] - 1","T":7,"A":true},
  "13722": {"IdG":"1","N":"[] - 2","T":7,"A":true},
  "6352": {"IdG":"1","N":"Zaman Sona Erdiğinde Beraberlik","T":1,"A":true}
}

该结构为对象,外层没有数组包裹,无法直接调用数组方法。

修复方案

如果需要遍历所有值做处理,可选以下方案:

  1. 提取对象所有值转为数组后调用map
// Object.values 会把对象所有属性值聚合为数组
Object.values(betsModel).map(a => {
  console.log(a);
});
  1. 同时需要获取键名的场景,用Object.entries
Object.entries(betsModel).map(([id, item]) => {
  // id 是原对象的键(13721/13722/6352),item 是对应的值
  console.log(id, item);
});

补充优化建议:你的代码缺少异常捕获逻辑,建议给正则匹配加非空判断,同时给Axios请求加catch回调,避免接口返回格式变化时出现未捕获的异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:39:05