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

使用map将字符串数组转为JSON对象数组时返回undefined如何解决

问题原因

你写的箭头函数type => {name: type}中,开头的{}被JavaScript引擎识别为函数体的块级作用域标记,而非对象字面量的包裹符号。里面的name: type会被解析为带标签的普通语句,没有任何返回值,整个箭头函数没有显式声明返回内容,所以默认返回undefined,最终map生成的数组就全是undefined。

解决方法

有两种常用写法可以修复这个问题:

  • 给对象字面量外层包裹小括号,明确告知引擎这是需要作为返回值的表达式,而非函数体块:
    entityTypes.map(type => ({name: type}))
    
  • 显式在函数块中写return语句返回对象:
    entityTypes.map(type => {
      return { name: type }
    })
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 21:36:07