从数组中返回某些键

时间:2014-12-15 08:18:21

标签: javascript arrays map

我有一个具有这种结构的数组:

var resellerList = [
       {
        fId : 1,
        fName : 'Reseller 1 Name',
        fCityCode : 1,
        fTel : '+1234567890'
       },
       {
        fId : 2,
        fName : 'Reseller 2 Name',
        fCityCode : 1,
        fTel : '+1234567890'
       },
       {
        fId : 3,
        fName : 'Reseller 3 Name',
        fCityCode : 2,
        fTel : '+1234567890'
       },
       {
        fId : 4,
        fName : 'Reseller 4 Name',
        fCityCode : 1,
        fTel : '+1234567890'
       },
       {
        fId : 5,
        fName : 'Reseller 5 Name',
        fCityCode : 2,
        fTel : '+1234567890'
       },
       {
        fId : 6,
        fName : 'Reseller 6 Name',
        fCityCode : 3,
        fTel : '+1234567890'
       },
       {
        fId : 7,
        fName : 'Reseller 7 Name',
        fCityCode : 1,
        fTel : '+1234567890'
       }
];

现在我想只选择fCityCode : 1的对象。

我知道我应该使用map来找到值的索引,但map只返回一个值的索引。

var ePos = resellerList.map(function (x) {
            return x.fCityCode;
        }).indexOf(1);

我该怎么办?

1 个答案:

答案 0 :(得分:2)

如果只想从数组中选择与某个条件匹配的项目,则使用的方法是.filter()

var cityCode1 = resellerList.filter(function (x) {
    return x.fCityCode === 1;
});

这将生成fCityCode为1的对象数组。