javascript - 有什么简写的 JavaScript 可以让这个 reducer 更简单吗?
问题描述
我需要“瘦身”并将对象列表减少到许多属性,但仍然很多。我的代码如下所示:
function reduceSpeakersData(speakers: Speaker[]) {
return speakers.map(function(speaker: Speaker) {
//return speaker;
return ({
id: speaker.id,
firstName: speaker.firstName,
lastName: speaker.lastName,
imageUrl: speaker.imageUrl,
company: speaker.company
})
});
}
我知道我是否有:
firstName: firstName
我可以做到
firstName
但不确定我能做什么
firstName: speaker.firstName
建议?
解决方案
可能与添加一些破坏性对象概念类似
const reduceSpeakersData = (speakers: Speaker[]) => {
return speakers.map(({ id, firstName, lastName, imageUrl, company }: Speaker) => ({
id,
firstName,
lastName,
imageUrl,
company
}));
};
推荐阅读
- java - Java 检查输入为整数或空以允许默认值
- octave - 八度 - 仅圆一列
- c# - 在 c# 中将 dd/MM/yyyy hh:mm:ss 转换为 dd-MMM-yyyy hh:mm:ss 给出错误:字符串未被识别为有效日期时间
- java - 从 MainActivity 调用位于 Service 中的函数
- python - PyQt5:继承 QTextCodec
- ios - 如何在uiview中添加波浪边框?
- windows - 变量不会在循环的第一次迭代中更新。CMD 批处理
- c# - 如何在 C# 中登录到控制台
- wso2esb - 引起:org.postgresql.util.PSQLException:错误:列“imagesync__c”的类型为布尔值,但表达式的类型为字符变化
- c - 由于长路径导致的 fopen 错误不存在此类文件