打字稿将对象数组映射到字符串数组如何检查未定义

时间:2018-06-25 22:32:13

标签: typescript

我有一个名为 projections 的json对象数组,我根据该对象的名为name的参数映射到字符串数组。如何在下面的代码行中执行空值或未定义的检查。

this.projections = this.cartService.outputProjections;
this.results = this.projections.map(a => a.name);

其中一些对象的a.name未定义。

1 个答案:

答案 0 :(得分:-1)

您可以在filter之后使用map函数,以删除虚假元素:

var x = [1, 2, 'a', 'b', null, 'c', undefined];

x = x.filter(a => !!a);

console.log(x);

这将删除所有伪造的元素,例如,空字符串。如果您只想删除nullundefined,则可以尝试以下操作:

var x = [1, 2, 'a', 'b', null, 'c', undefined, ''];

x = x.filter(a => typeof a !== 'undefined' && a != null);

console.log(x);