【发布时间】:2025-12-22 12:55:12
【问题描述】:
我编写了一段代码,它将数据集的值映射到一个新对象。
我想在将数据集中的一个变量分配给新的对象变量之前对其进行检查。为此,我将使用 if 条件。如何使用 Typescript 中的地图来实现这一点。如果我尝试编译,以下代码将返回错误。
如果我尝试在 console.log 行执行 if 条件,它只会影响数据集中的第一项。
return this.UserService.search(url)
.map((data) => {
console.log(data);
data.result = <any> data.result.map((user, index) => ({
// if statement causing error here
if(user.name === null || user.name === undefined){
// error with this if condition
},
id: user.id,
name: user.name,
type: user.type,
password: user.password,
}));
return data;
}).map(data => ({
meta: { totalItems: data.size },
data: data.result,
}));
【问题讨论】:
-
基本 javascript 语法,您正在返回一个对象,您不能在这样的对象中包含
if语句 - 我的意思是,属性名称是什么? -
是的,我不能在地图中使用 if。但是,在映射之前,我想检查 user.name 的 null 值,如果为 null,则添加一个占位符名称。类似于 user.name = 'jaromanda'
标签: javascript typescript dictionary if-statement