【发布时间】:2019-12-06 07:09:01
【问题描述】:
我正在尝试从以下 json 对象中过滤 id = 963。但是得到空数组作为输出。代码如下:
var json ={"prizes"[
{"year":"2018",
"category":"physics",
"overallMotivation":"\u201cfor groundbreaking inventions in the field of laser physics\u201d",
"laureates"[
{"id":"960",
"firstname":"Arthur",
"surname":"Ashkin",
"motivation":"\"for the optical tweezers and their application to biological systems\"","share":"2"},
{"id":"961",
"firstname":"G\u00e9rard",
"surname":"Mourou",
"motivation":"\"for their method of generating high-intensity, ultra-short optical pulses\"",
"share":"4"},
{"id":"962",
"firstname":"Donna",
"surname":"Strickland",
"motivation":"\"for their method of generating high-intensity, ultra-short optical pulses\"",
"share":"4"}]},
{"year":"2018",
"category":"chemistry",
"laureates":[
{"id":"963",
"firstname":"Frances H.",
"surname":"Arnold",
"motivation":"\"for the directed evolution of enzymes\"",
"share":"2"},
{"id":"964",
"firstname":"George P.",
"surname":"Smith",
"motivation":"\"for the phage display of peptides and antibodies\"",
"share":"4"},
{"id":"965",
"firstname":"Sir Gregory P.","surname":"Winter",
"motivation":"\"for the phage display of peptides and antibodies\"",
"share":"4"}]},
{"year":"2018",
"category":"medicine",
"laureates":[
{"id":"958",
"firstname":"James P.",
"surname":"Allison",
"motivation":"\"for their discovery of cancer therapy by inhibition of negative immune regulation\"",
"share":"2"},
{"id":"959",
"firstname":"Tasuku",
"surname":"Honjo",
"motivation":"\"for their discovery of cancer therapy by inhibition of negative immune regulation\"",
"share":"2"}]}]};
var winners = json.prizes.map(holders=> holders.laureates)
var winner = winners.filter(item => item.id === 963)
console.log(winner);
这个这个json包含数组内的对象数组。我正在尝试获取一个特定的对象。但是在控制台中得到空数组。
[]
【问题讨论】:
-
id 是字符串,所以试试 item.id == 963 或 item.id === '963'