如何在 JavaScript 中按键过滤对象
JavaScript 对象没有 filter()
方法,你必须先把对象变成一个数组才能使用 数组的 filter()
方法 。您可以使用 Object.keys()
函数将对象的键转换为数组,并使用 reduce()
功能 如下图。
const obj = { firstName: 'Jean-Luc', lastName: 'Picard', age: 59 };
// { firstName: 'Jean-Luc', lastName: 'Picard' }
Object.keys(obj).
filter((key) => key.includes('Name')).
reduce((cur, key) => { return Object.assign(cur, { [key]: obj[key] })}, {});
另一种选择是将对象转换为条目数组,使用 Object.entries()
,过滤条目,然后使用将条目数组转换回对象 Object.fromEntries()
。
const obj = { firstName: 'Jean-Luc', lastName: 'Picard', age: 59 };
// { firstName: 'Jean-Luc', lastName: 'Picard' }
Object.fromEntries(Object.entries(obj).filter(([key]) => key.includes('Name')));
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论