Javascript subline.js groupBy和Contains

Javascript subline.js groupBy和Contains,javascript,arrays,group-by,underscore.js,Javascript,Arrays,Group By,Underscore.js,我有两个值数组,其中一个需要按另一个进行分组,因此: var countries = ['IT', 'BE', 'SE']; var items = [ {amount: 9, country: 'IT'}, {amount: 5, country: 'US'}, {amount: 4, country: 'BE'}, {amount: 3, country: 'IT'}, {amount: 9, country: 'BE'}, {amount: 9

我有两个值数组,其中一个需要按另一个进行分组,因此:

var countries = ['IT', 'BE', 'SE'];
var items = [
   {amount: 9, country: 'IT'}, 
   {amount: 5, country: 'US'}, 
   {amount: 4, country: 'BE'}, 
   {amount: 3, country: 'IT'}, 
   {amount: 9, country: 'BE'}, 
   {amount: 9, country: 'SE'}
];

var groupedItems = _.groupBy(items, function (item) {
    // Hint please
});
我需要按照以下规则对
国家进行分组:

  • 如果
    item.country==“IT”
  • 如果
    item.country!='它包含(国家、项目、国家)
  • 如果
    !\u,则分组。包含(国家/地区、项目.国家/地区)

有什么提示吗?

由于评论中的提示,这非常简单:

_.groupBy(function (item) {
    if (item.country !== 'IT' && _.contains(countries, item.country)) {
        return 'IT';
    } else if (item.country === 'IT') {
        return 'UE';
    } else if (!_.contains(countries, item.country)) {
        return 'EXTRA-UE';
    }
});

将这些规则添加到函数中,如果满足条件,则返回适当的值,例如,如果满足条件1,则返回1;如果满足条件2,则返回2等。更改每组返回的值是缺少的部分。谢谢