0

我正在尝试从基于数字字符串的数组中获取文本。

这是数组:

const titles = [
  {
    level: '0',
    text: 'None'
  },
  {
    level: '1',
    text: 'Bee Support'
  },
  {
    level: '2',
    text: 'Bee Staff'
  },
  {
    level: '3',
    text: 'Bee Developer'
  },
  {
    level: '4',
    text: 'Safe Number'
  },
  {
    level: '5',
    text: 'Bee Developer'
  },
]

我正在尝试根据“级别”获取“文本”。我不确定该怎么做,因为我真的做不到.includes

4

2 回答 2

2

使用查找

    const titles = [
      {
        level: '0',
        text: 'None'
      },
      {
        level: '1',
        text: 'Bee Support'
      },
      {
        level: '2',
        text: 'Bee Staff'
      },
      {
        level: '3',
        text: 'Bee Developer'
      },
      {
        level: '4',
        text: 'Safe Number'
      },
      {
        level: '5',
        text: 'Bee Developer'
      },
    ];
    console.log(titles.find(item => item.level === "5").text)

如果您有多个级别并且想要返回具有该级别的所有元素,请使用filter

console.log(titles.filter(item => item.level === "5").map(item => item.text));
于 2020-07-23T01:31:09.923 回答
0

您可以使用filter它来允许有多个匹配项的可能性。Mozilla 有一个很好的解释

const titles = [
  {
    level: '0',
    text: 'None'
  },
  {
    level: '1',
    text: 'Bee Support'
  },
  {
    level: '2',
    text: 'Bee Staff'
  },
  {
    level: '3',
    text: 'Bee Developer'
  },
  {
    level: '4',
    text: 'Safe Number'
  },
  {
    level: '5',
    text: 'Bee Developer'
  },
]

let searchLevel = "3";
console.log(
     titles.filter(title => title.level == searchLevel)
         .map(title => title.text)
);

于 2020-07-23T01:31:37.077 回答