一 sort排序
二 set和filter数组去重
一 sort排序
首先,有一个数组[{a:1,b:2},{a:2,b:1},{a:1,b:1}]
,我们需要按对其进行排序,排序规则是先比较a,在比较b,升序。(先以a的值进行升序,在a相等的情况下才比较b的大小,升序)
规定使用sort来排序
我们先看下sort的用法
注意sort是直接对原数组操作
下面我们来实现:
var array = [{a:1,b:2},{a:2,b:1},{a:1,b:1}]
array.sort((o,p)=>{
if(o.a<p.a){
return -1
}else if(o.a==p.a){
if(o.b<p.b){
return -1
}else if(o.b==p.b){
return 0
}else{
return 1
}
}else{
return 1
}
})
返回结果:
用sort排序还是很方便的
二 set和filter数组去重
set数组去重
主要利用ES6新增的 Set
和Array.from
方法或者或者 扩展运算符(...
)
先来看下Set
和Array.from
方法
扩展运算符就不说了
上代码实践下
用扩展运算符代码会简洁很多
filter数组去重
主要利用ES6 filter
方法 和 indexOf
方法(返回某个指定的字符串值在字符串中首次出现的位置)
先来看下filter
方法
注意哦,filter
不会改变原数组
实践下:
以上便是数组去重的几种新方式,都蛮简洁的
未完待续
by 潘小闲
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。