数组添加删除,去重,排序,找到相同元素

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hopefullman/article/details/82012165

小白前端一个,公司项目,里面有一个数组增加,删除,去重,排序,找到相同元素个数等等...

开始用push,splice等方法都无法达到自己效果,后来自己总结了,现在贴出来。

里面有一些是RN代码,但是还是可以看懂的:

this.setState({ obj: res });
let scanres=this.state.obj.SCAN;
this.state.CodeList.push(scanres);

// push方法顺利的完成了添加任务
let countsset=new Set(this.state.CodeList);

//es6 语法顺利的将数组去重,但是现在返回的是一个集合了
let countarray=Array.from(countsset);

//这是将集合转化为数组,一个转化后的新数组
let arr=this.state.CodeList.slice(0,-1);

//这里就是删除了,很多人都利用splice还有delet以及其他的方法,但是我试了试,效果不对。

function sortId(a,b){  
        return a.id-b.id  
      }
      arr.sort(sortId);

//这个方法就是排序了,从小到大,对一个叫做arr的数组排序

for (let i = 0; i < arr.length;) {
        let count = 0;
        for (let j = i; j < arr.length; j++) {
          if (arr[i].id === arr[j].id) {
            count++;
          }
        }
        newarr.push({
          date: arr[i],
          count: count
        })
        i+=count;
      }
      console.log(newarr);

//这里就是返回一个newarr的数组,里面有排序好的数组,还有相同元素的个数

以上就是一个简单的数组应用,打完收工

猜你喜欢

转载自blog.csdn.net/hopefullman/article/details/82012165
今日推荐