当我们需要处理字符串或者数组数据的时候,有时候我们需要去重处理。下面是JS实现字符串去重及数组去重的方法:
字符串去重
JS实现字符串去重有以下方法:
方法一:Array.from + Set
我们可以先把字符串转换成数组,然后使用ES6新增的Set数据结构去重,最后在将其转换为字符串。
const str = "aabbcc";
const arr = Array.from(str);
const arr1 = [...new Set(arr)];
const str1 = arr1.join('');
console.log(str1); // "abc"
方法二:利用indexOf
我们也可以通过循环字符串的每个字符来得到去重后的字符串。如果当前字符不在新串中,就添加它。
const str = "aabbcc";
let str1 = "";
for (let i = 0; i < str.length; i++) {
if (str1.indexOf(str.charAt(i)) == -1) {
str1 += str.charAt(i);
}
}
console.log(str1); // "abc"
数组去重
JS实现数组去重有以下方法:
方法一:利用Set
我们可以使用ES6新增的Set数据结构去重。通过创建一个新的Set对象,然后将数组转换为Set数据结构。最后再将Set转换回数组。
const arr = [1,2,2,3,4,4,5];
const arr1 = [...new Set(arr)];
console.log(arr1); // [1,2,3,4,5]
方法二:利用indexOf
我们也可以通过循环数组的每一个元素来得到去重后的数组。如果当前元素不在新数组中,就添加它。
const arr = [1,2,2,3,4,4,5];
let arr1 = [];
for (let i = 0; i < arr.length; i++) {
if (arr1.indexOf(arr[i]) == -1) {
arr1.push(arr[i]);
}
}
console.log(arr1); // [1,2,3,4,5]
以上就是JS实现字符串去重及数组去重的方法。无论使用哪种方法,要能够写出行之有效的代码需要多多练习。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现字符串去重及数组去重的方法示例 - Python技术站