【问题标题】:Javascript: How to get a unique list of values assigned to the same property from an array of objects?Javascript:如何从对象数组中获取分配给同一属性的唯一值列表?
【发布时间】:2020-01-31 03:21:04
【问题描述】:

我正在尝试为分配给 city 属性的所有值创建一个唯一列表,该属性被埋在对象中的对象中,并且我有一个此类对象的数组

buildings = [ { name: 'Victoria Bell Tower', filterOptions: { city: 'Ottowa', state: 'Canada', buildingType: 'Parliament Building', }, }, { name: 'Cathedral', filterOptions: { city: 'Washington D.C.', state: '', buildingType: 'Cathedral', }, }, { name: 'Post Office', filterOptions: { city: 'Washington D.C.', state: '', buildingType: 'Post Office', }, }]

获取城市属性的独特数组的实用方法是什么:

cities = ['Ottowa', 'Washington D.C.']

【问题讨论】:

    标签: javascript arrays unique javascript-objects


    【解决方案1】:

    你可以试试我的简单代码:

    let arr = buildings.map(b => {
      return b.filterOptions.city
    })
    console.log([...new Set(arr)]);
    

    【讨论】:

    • 这不会删除重复,虽然对吧?我需要下拉列表的唯一值
    • 你试试?这是一个演示:codepen.io/phuongnm153/pen/oNgreZy
    • @Mugunga 是因为使用了Set 过滤掉重复项
    • 啊,可以,谢谢。为什么它需要围绕新集合的 [... ] 而不仅仅是:log(new Set(arr));
    猜你喜欢
    • 2019-07-16
    • 2019-01-03
    • 2018-05-25
    • 2022-06-22
    • 2021-05-02
    • 2017-01-07
    • 2019-10-20
    • 2012-04-18
    相关资源
    最近更新 更多