千家信息网

javascript中去重操作怎么使用

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,本篇内容主要讲解"javascript中去重操作怎么使用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"javascript中去重操作怎么使用"吧!核心的基
千家信息网最后更新 2024年09月21日javascript中去重操作怎么使用

本篇内容主要讲解"javascript中去重操作怎么使用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"javascript中去重操作怎么使用"吧!

核心的基本算法

遍历拿到的数据数组,然后把该数组中的元素存放到新的数组中,在存放到新数组之前要检查数组的元素是否已经存在,如果存在(相同元素,即重复元素)就不再放入新的数组中。

数据去重的基本用法

在JS中关于去重操作的使用一般是关于数组去重、字符串去重、数字去重,具体的使用示例如下所示。

1、数组去重

数组去重有三种方法:

  • 方法一:indexOf循环去重;

  • 方法二:ES6的Set去重;Array.from(new Set(arr));

  • 方法三:Object 键值对去重;把数组的值存成 Object 的 key 值,比如 Object[valuea] = true, 在判断另一个值的时候,如果 Object[valueb]存在的话,就说明该值是重复的。

这里只拿indexOf 循环去重来做示例,

示例数组:

var array = [1, 2, 3, 4, 5, 5, 4, 3, 2,1];

处理方法:

function repeat(array){var array1 = []; // 新建数组用来存array的值for(var i=0,leng=array.length;i

注意:indexOf是ES5新增加的函数,用来获取数组中元素的位置(下标),兼容性IE8+。

2、字符串去重

示例字符串:

var str = "12345678987654321";

处理方法:

function repeat(str){var str1 = ""; //用来接收去重后的字符串for(var i in str){if(str1.indexOf(str.charAt(i)) == -1){str1+=str.charAt(i);}}return str1; // 返回去重后的字符串}// 输出结果repeat("123456789");// 字符串转换成数组function repeat1(str){var array = str.slice("");var str1 = uniqueArray(array);return str1.join("");}console.log(repeat1(str)); //输出结果repeat1("123456789");

3、数字去重

接着上面字符串去重的思路就比较简单许多,首先把数字转换成字符串,然后再做处理。12345678987654321去重之后结果为123456789。

示例字符串:

var str = "12345678987654321";

处理方法:

function repeat(num){var str = num + "";var num1 = repeat(str);return parseInt(num1);}console.log(repeat(num)); // 输出结果repeat(123456789);

到此,相信大家对"javascript中去重操作怎么使用"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0