繁体   English   中英

从 angular 中的数组中检索值

[英]Retrieving values from array in angular

我正在处理 angular 应用程序。 我有一个数组如下。

[
    { 
     Code: "123",
     Details:[
       {
        Id: "1",
        Name: "Gary"
       },
       {
        Id: "2",
        Name: "Rocky"
       }]
    },
    { 
     Code: "456",
     Details:[
       {
        Id: "3",
        Name: "Cindy"
       },
       {
        Id: "4",
        Name: "Jacky"
       }]
    }
]

可以有更多的元素。 此数组包含代码、详细信息数组(可以是任意长度)- 此详细信息数组包含 ID 和名称。 我有来自查询参数的 ID。 我需要查看 Id 在 Details 数组中匹配的 id 并为此获取代码。 例如,如果来自查询参数的 ID 是 4,那么我需要检索代码值,即 456。如果 ID 值为 2,那么我需要检索代码值,即 123。我该怎么做?

假设 OP 正在处理一组对象。

您可以使用 function Array.prototype.find和 function Array.prototype.some来识别特定的细节。

最后,使用解构赋值,我们可以提取属性Code

 let arr = [{ Code: "123", Details: [{ Id: "1", Name: "Gary" }, { Id: "2", Name: "Rocky" }] }, { Code: "456", Details: [{ Id: "3", Name: "Cindy" }, { Id: "4", Name: "Jacky" }] }]; let { Code } = arr.find(({ Details }) => Details.some(({ Id }) => Id === "4")) || {}; //If not found, undefined will be assigned console.log(Code);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM