所以我的问题是我是否有一个对象数组
var arr = [{"id":1, "image":"sport.jpg", "tag_name":"Sport","tag_type":"Takmicenje","my_feed":true, "my_favourites":true},
{"id":2, "image":"sport.jpg", "tag_name":"Fudbal","tag_type":"Takmicenje","my_feed":true, "my_favourites":true},
{"id":3, "image":"sport.jpg","tag_name":"Premier League","tag_type":"Takmicenje","my_feed":false,"my_favourites":true},
{"id":4, "image":"sport.jpg", "tag_name":"La liga","tag_type":"Takmicenje","my_feed":true,"my_favourites":true},
{"id":5, "image":"sport.jpg", "tag_name":"Real Madrid","tag_type":"Fudabal","my_feed":true,"my_favourites":true},
{"id":6, "image":"sport.jpg","tag_name":"UEFA","tag_type":"Tim","my_feed":true,"my_favourites":true},
{"id":7,"image":"sport.jpg","tag_name":"Juve","tag_type":"Liga","my_feed":true,"my_favourites":false},
{"id":8,"image":"sport.jpg","tag_name":"Barca","tag_type":"Takmicenje","my_feed":false,"my_favourites":true},
{"id":9,"image":"sport.jpg","tag_name":"Sport","tag_type":"Fudbal","my_feed":true,"my_favourites":true}
]
我映射槽数组,然后过滤它以删除欺骗,(tag_type),但就是无法理解它。
var filtred = arr.map(function(item) { return item.tag_type;
}).filter(function(filt,index) {
return filt.indexOf(filt) == index;
});
过滤结果是[“Takmicenje”]
map 工作正常
["Takmicenje", "Takmicenje", "Takmicenje", "Takmicenje", "Fudabal", "Tim", "Liga", "Takmicenje", "Fudbal"]
过滤结果为
["Takmicenje"]
我想获取数组
['Takmicenje','Fudbal','Tim','Liga'];
最佳答案
正确使用过滤器:
var arr = [{"id":1, "image":"sport.jpg", "tag_name":"Sport","tag_type":"Takmicenje","my_feed":true, "my_favourites":true},
{"id":2, "image":"sport.jpg", "tag_name":"Fudbal","tag_type":"Takmicenje","my_feed":true, "my_favourites":true},
{"id":3, "image":"sport.jpg","tag_name":"Premier League","tag_type":"Takmicenje","my_feed":false,"my_favourites":true},
{"id":4, "image":"sport.jpg", "tag_name":"La liga","tag_type":"Takmicenje","my_feed":true,"my_favourites":true},
{"id":5, "image":"sport.jpg", "tag_name":"Real Madrid","tag_type":"Fudabal","my_feed":true,"my_favourites":true},
{"id":6, "image":"sport.jpg","tag_name":"UEFA","tag_type":"Tim","my_feed":true,"my_favourites":true},
{"id":7,"image":"sport.jpg","tag_name":"Juve","tag_type":"Liga","my_feed":true,"my_favourites":false},
{"id":8,"image":"sport.jpg","tag_name":"Barca","tag_type":"Takmicenje","my_feed":false,"my_favourites":true},
{"id":9,"image":"sport.jpg","tag_name":"Sport","tag_type":"Fudbal","my_feed":true,"my_favourites":true}
];
var filtred = arr.map(function(item) { return item.tag_type;
}).filter(function(filt, ind, currentArray) {
return ind == currentArray.indexOf(filt);
});
console.log(filtred);
关于javascript - 映射对象数组,然后使用过滤器删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44210505/