【问题标题】:How to select a value from an object in an array如何从数组中的对象中选择一个值
【发布时间】:2023-03-09 05:02:01
【问题描述】:

我无法弄清楚如何从状态数组中的对象中选择一个值。我有以下数组:

[
 {
  name: bench,
  weight: 200,
  percentages: [200,...]
 },
 {
  name: squat,
  weight: 300,
  percentages: [300,...]
 }
]

在我的应用程序中,我希望能够根据名称选择对象的重量或百分比。例如,如果我选择 'bench',我想得到 '200' 和 '[200,...]' 作为回报。现在我正在映射数组,并且无论我选择哪个名称,我都会得到每个重量和百分比。我怎样才能从相应的名字中只得到那些?任何帮助将不胜感激。

【问题讨论】:

  • 您在寻找过滤器吗? yourArray.filter(e => e.name === "bench")? bench 是字符串吗?如果可以,请分享您的尝试和更多代码。
  • 或者,如果您知道它只是一个元素,请使用 find() 而不是 filter()

标签: javascript arrays reactjs mapping state


【解决方案1】:

array.find() 搜索数组并返回第一个匹配条件的元素:

const data = [
 {
  name: "bench",
  weight: 200,
  percentages: [200,400]
 },
 {
  name: "squat",
  weight: 300,
  percentages: [300,600]
 }
];

const selected = data.find((e) => e.name === "bench");
console.log("Weight", selected.weight);
console.log("Percentages", selected.percentages);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-29
    • 2021-06-15
    • 2021-07-15
    • 2021-03-17
    • 1970-01-01
    • 2019-12-03
    • 2021-07-03
    相关资源
    最近更新 更多