Javascript 如果id与值位于同一数组中,如何在JSON块中查找值?

Javascript 如果id与值位于同一数组中,如何在JSON块中查找值?,javascript,Javascript,我希望能够通过引用id来检索以下json块中的值。到目前为止,我一直在使用它们出现的顺序来引用我需要获取的值(例如项[1]。值[0]。值),但这并不好,因为它们可能会改变顺序) 我使用纯js-如果可能的话 "items": [ { "id": "0", "position": 0, "value": "test" }, { "values": [ { "position": 0, "value": "One

我希望能够通过引用id来检索以下json块中的值。到目前为止,我一直在使用它们出现的顺序来引用我需要获取的值(例如项[1]。值[0]。值),但这并不好,因为它们可能会改变顺序)

我使用纯js-如果可能的话

"items": [
  {
    "id": "0",
    "position": 0,
    "value": "test"
  },
  {
    "values": [
      {
        "position": 0,
        "value": "One location"
      }
    ],
    "id": "2",
    "position": 1
  }]

您可以使用
find
搜索第一个匹配项

let obj={“items”:[{“id”:“0”,“position”:0,“value”:“test”},{“values”:[{“position”:0,“value”:“One location”}],“id”:“2”,“position”:1}]}
设id='2';
让result=obj.items.find(o=>o.id==id);
控制台日志(结果)您可以尝试使用

var数组1=[
{
“id”:“0”,
“位置”:0,
“值”:“测试”
},
{
“价值观”:[
{
“位置”:0,
“值”:“一个位置”
}
],
“id”:“2”,
“职位”:1
}
];
var found=array1.find(函数(元素){
返回元素。位置===1;
});
console.log(找到);
如果(找到值){
var subfind=found.values.find(函数(元素){
返回元素。位置===0;
});
console.log(子索引);

}
谢谢-我需要更多地练习.find函数

我最终使用了-

items.find(o => o.id === '0').value