roo*_*eih -1 javascript node.js
我有一个包含多个对象的 JSON 数组。我想返回包含特定值的对象。例如,我想返回
[
service_wog: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 76,
service: 'WOG',
slug: 'wog'
},
service_gojoy: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 77,
service: 'GoJoy',
slug: 'gojoy'
}
]
Run Code Online (Sandbox Code Playgroud)
如何在 slug 中返回包含“gojoy”的对象?
我尝试了以下方法:
let u = Object.values(a);
u.filter(i => i.slug === 'gojoy');
Run Code Online (Sandbox Code Playgroud)
它似乎不起作用......我误解了它的filter()工作原理吗?
不,看来您使用filter正确。但是,您使用什么作为输入:
[
service_wog: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 76,
service: 'WOG',
slug: 'wog'
},
service_gojoy: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 77,
service: 'GoJoy',
slug: 'gojoy'
}
]
Run Code Online (Sandbox Code Playgroud)
它不是一个有效的数组,而是一个对象。
因此,而不是[和]-{和}应使用:
{
service_wog: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 76,
service: 'WOG',
slug: 'wog'
},
service_gojoy: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 77,
service: 'GoJoy',
slug: 'gojoy'
}
}
Run Code Online (Sandbox Code Playgroud)
所以最终:
[
service_wog: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 76,
service: 'WOG',
slug: 'wog'
},
service_gojoy: {
count: 48,
popular: false,
code: 33,
price: 20,
id: 77,
service: 'GoJoy',
slug: 'gojoy'
}
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33 次 |
| 最近记录: |