如何消除首选国家的重复。我需要在下拉列表中添加所有非洲国家作为首选国家。
我用来做这个的代码。
preferredCountries: [ "gh", "dz","ao","bj","bw","bf","bi","cm","cf","td","km","cd","dj","eg","gq","er","sz","et","ga","gm","gq","gw","ke","ls","lr","ly","mg","mw","ml","mr","mu","ma","mz","na","ne","ng","rw","sn","sc","sl","so","za","ss","sd","tz","tg","tn","ug","zm","zw" ],但是,这个国家的所有国家都在列表中再次重复。我怎样才能去掉重复。
发布于 2021-10-14 08:56:07
您可以在此处使用Set获取唯一值,然后使用... spread运算符返回到一个数组:
preferredCountries = [ "gh", "dz","ao","bj","bw","bf","bi","cm","cf","td","km","cd","dj","eg","gq","er","sz","et","ga","gm","gq","gw","ke","ls","lr","ly","mg","mw","ml","mr","mu","ma","mz","na","ne","ng","rw","sn","sc","sl","so","za","ss","sd","tz","tg","tn","ug","zm","zw" ];
const uniqueCountries = [...new Set(preferredCountries)];
console.log({ uniqueCountries });.as-console-wrapper { max-height: 100% !important; top: 0; }
另一个例子:
const values = [ 'a', 'a', 'a', 'b', 'b', 'b', 'c' ];
// Use spread operator and new Set()
let uniqueValues = [...new Set(values)];
console.log({ uniqueValues });
// Or use Array.from() and new Set()
uniqueValues = Array.from(new Set(values));
console.log({ uniqueValues });.as-console-wrapper { max-height: 100% !important; top: 0; }
发布于 2021-10-14 09:08:07
您可以通过不同的方式避免重复数组
let preferredCountries: [ "gh", "dz","ao","bj","bw","bf","bi","cm","cf","td","km","cd","dj","eg","gq","er","sz","et","ga","gm","gq","gw","ke","ls","lr","ly","mg","mw","ml","mr","mu","ma","mz","na","ne","ng","rw","sn","sc","sl","so","za","ss","sd","tz","tg","tn","ug","zm","zw" ],
let NewpreferredCountries= [...new Set(chars)];
console.log(NewpreferredCountries);另一种方法是
let preferredCountries: [ "gh", "dz","ao","bj","bw","bf","bi","cm","cf","td","km","cd","dj","eg","gq","er","sz","et","ga","gm","gq","gw","ke","ls","lr","ly","mg","mw","ml","mr","mu","ma","mz","na","ne","ng","rw","sn","sc","sl","so","za","ss","sd","tz","tg","tn","ug","zm","zw" ],
let NewpreferredCountries= preferredCountries.filter((c, index) => {
return preferredCountries.indexOf(c) === index;
});
console.log(NewpreferredCountries);还可以使用forEach()和include()从数组中删除重复项
let preferredCountries: [ "gh", "dz","ao","bj","bw","bf","bi","cm","cf","td","km","cd","dj","eg","gq","er","sz","et","ga","gm","gq","gw","ke","ls","lr","ly","mg","mw","ml","mr","mu","ma","mz","na","ne","ng","rw","sn","sc","sl","so","za","ss","sd","tz","tg","tn","ug","zm","zw" ],
let NewpreferredCountries= [];
preferredCountries.forEach((c) => {
if (!NewpreferredCountries.includes(c)) {
NewpreferredCountries.push(c);
}
});
console.log(NewpreferredCountries);https://stackoverflow.com/questions/69567765
复制相似问题