如何使用下划线 .uniq 来 return 一个唯一的值数组?

How do I use underscore .uniq to return a unique array of values?

我正在尝试使用下划线 .uniq 对数组进行排序,但它 returns 与未排序的数组相同。我认为这是因为它是按 id 排序的,但我不确定。如果它按 id 排序,我如何让它沿着与查询相同的行排序(allCategories 是 'primary' 列中按行的所有值)基于我的 Parse 集合中的主列bizCategories?

我的代码:

var Categories = Parse.Object.extend("bizCategories");

var categories = new Categories();

        $scope.primarySelect = function() {
            var primary = new Parse.Query(Categories);
            primary.find({
                success:function(list){
                    $scope.allCategories = _.uniq(list)
                    console.log($scope.allCategories);
                }
            })
        }
        $scope.primarySelect();

解析集合列'primary':

如果您只想获取 "primary" 字段的唯一值,您可以按如下方式进行:

var primaryList = _.map(list, function(item) { return item.get('primary'); });
var uniquePrimaryList = _.uniq(primaryList);