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

如何将字符串列表映射为JSON对象列表?TypeScript报错求助

问题解决:TypeScript数组转换时的语法错误

你的问题出在箭头函数的写法上——当箭头函数直接返回对象字面量时,TypeScript会把外层的{}当成函数体的代码块,而非对象字面量,因此报错要求加分号。

两种修复方案:

方案1:给对象字面量包裹括号

用()把返回的对象包起来,明确告诉TypeScript这是一个对象而非代码块:

let lst:string [] = ["a", "b", "c"];
let foo:any [] = lst.map(l => ({ "str": l }));

方案2:显式使用return语句

如果不想加括号,也可以在函数体内显式返回对象:

let lst:string [] = ["a", "b", "c"];
let foo:any [] = lst.map(l => {
  return { "str": l };
});

两种方法都能正常运行,最终foo会得到你期望的结果:[{str:"a"},{str:"b"},{str:"c"}]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 14:22:01