【问题标题】:How to find the values form array of objects [duplicate]如何从对象数组中查找值[重复]
【发布时间】:2020-02-15 07:06:21
【问题描述】:

如何从对象数组中查找值。 我正在访问该数组以从 @code#text 获取确切值,如何找到这些值。

const inventory = [
{@code: "5d5a3fdcf417612314982018", #text: "M2-P21 Customer Flow"}
{@code: "5d6e594de40c3c0b1d035f2e", #text: "Customers"}
{@code: "5d760f7939a9a2032306e5c7", #text: "Email test Delete later"}
{@code: "5d973240019db32409761d3e", #text: "Email test Delete later-CLONED"}
{@code: "no_records", #text: "No records"}
{@code: "all_succeeded", #text: "All succeeded"}
{@code: "all_failed", #text: "All Failed"}
{@code: "partially", #text: "Partially Succedded/Failed"}];

const result = inventory.find( ({@code}) => (@code) === '5d6e594de40c3c0b1d035f2e' );
console.log(result);

【问题讨论】:

  • 请在控制台查看错误

标签: javascript reactjs


【解决方案1】:

您需要带引号的密钥并使用带引号的密钥进行访问。

const inventory = [{ '@code': "5d5a3fdcf417612314982018", '#text': "M2-P21 Customer Flow" }, { '@code': "5d6e594de40c3c0b1d035f2e", '#text': "Customers" }, { '@code': "5d760f7939a9a2032306e5c7", '#text': "Email test Delete later" }, { '@code': "5d973240019db32409761d3e", '#text': "Email test Delete later-CLONED" }, { '@code': "no_records", '#text': "No records" }, { '@code': "all_succeeded", 'text': "All succeeded" }, { '@code': "all_failed", '#text': "All Failed" }, { '@code': "partially", '#text': "Partially Succedded/Failed" }];

const result = inventory.find(o => o['@code'] === '5d6e594de40c3c0b1d035f2e');

console.log(result);

【讨论】:

  • 大骗子.......
【解决方案2】:

您提供的清单对象格式错误。

const inventory = [
{"@code": "5d5a3fdcf417612314982018", "#text": "M2-P21 Customer Flow"},
{"@code": "5d6e594de40c3c0b1d035f2e", "#text": "Customers"},
{"@code": "5d760f7939a9a2032306e5c7", "#text": "Email test Delete later"},
{"@code": "5d973240019db32409761d3e", "#text": "Email test Delete later-CLONED"},
{"@code": "no_records", "#text": "No records"},
{"@code": "all_succeeded", "#text": "All succeeded"},
{"@code": "all_failed", "#text": "All Failed"},
{"@code": "partially", "#text": "Partially Succedded/Failed"}];

const result = inventory.find(item => item["@code"] === "5d6e594de40c3c0b1d035f2e");
console.log(result);

【讨论】:

    【解决方案3】:

    引号、逗号和通过 ["@code"] 访问

    这里是findIndex 版本

    const inventory = [
    {"@code": "5d5a3fdcf417612314982018", "#text": "M2-P21 Customer Flow"},
    {"@code": "5d6e594de40c3c0b1d035f2e", "#text": "Customers"},
    {"@code": "5d760f7939a9a2032306e5c7", "#text": "Email test Delete later"},
    {"@code": "5d973240019db32409761d3e", "#text": "Email test Delete later-CLONED"},
    {"@code": "no_records",               "#text": "No records"},
    {"@code": "all_succeeded",            "#text": "All succeeded"},
    {"@code": "all_failed",               "#text": "All Failed"},
    {"@code": "partially",                "#text": "Partially Succeeded/Failed"}];
    
    const result = inventory[inventory.findIndex(x => x["@code"] === '5d6e594de40c3c0b1d035f2e')]
    console.log(result);

    【讨论】:

      猜你喜欢
      • 2023-01-17
      • 1970-01-01
      • 2016-04-17
      • 1970-01-01
      • 2021-05-29
      • 2018-08-13
      • 1970-01-01
      • 2021-11-14
      相关资源
      最近更新 更多