千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)
在 JavaScript 中,可以使用多種方法去除數(shù)組中的重復(fù)值。 以下是幾種常見的方法:
使用 Set:使用 Set 數(shù)據(jù)結(jié)構(gòu)可以輕松去除數(shù)組中的重復(fù)值。 Set 會自動過濾重復(fù)元素,并返回一個去重后的結(jié)果數(shù)組。
let arr = [1, 2, 3, 3, 4, 5, 5];
let uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]
使用 filter:使用數(shù)組的 filter 方法結(jié)合 indexOf 或 includes 方法,可以篩選出不重復(fù)的元素組成的新數(shù)組。
let arr = [1, 2, 3, 3, 4, 5, 5];
let uniqueArr = arr.filter((value, index, self) => {
return self.indexOf(value) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
使用 reduce:使用數(shù)組的 reduce 方法,遍歷數(shù)組并逐個判斷元素是否已經(jīng)存在于結(jié)果數(shù)組中,如果不存在則將其添加到結(jié)果數(shù)組中。
let arr = [1, 2, 3, 3, 4, 5, 5];
let uniqueArr = arr.reduce((prev, current) => {
if (!prev.includes(current)) {
prev.push(current);
}
return prev;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
使用 for 循環(huán):使用 for 循環(huán)遍歷數(shù)組,并將不重復(fù)的元素添加到結(jié)果數(shù)組中。
let arr = [1, 2, 3, 3, 4, 5, 5];
let uniqueArr = [];
for (let i = 0; i < arr.length; i++) {
if (!uniqueArr.includes(arr[i])) {
uniqueArr.push(arr[i]);
}
}
console.log(uniqueArr); // [1, 2, 3, 4, 5]
這些方法都可以實現(xiàn)去除數(shù)組中的重復(fù)值,具體選擇哪種方法取決于你的個人喜好和代碼場景。
相關(guān)推薦