记录一下好用的Js技巧(新手向大佬勿喷)
发表于:2022-04-20 | 分类: 前端
字数统计: 345 | 阅读时长: 1分钟 | 阅读量:
从数组中删除重复项
1
var deletedArr = [...new Set(arr)]
数组排序
1
2
3
4
var sortFunction = (a, b) => {
return a - b
}
[3, 2, 2, 1, 4].sort(sortFunction) //[1, 2, 2, 3, 4]
从对象数组中取得某属性为指定值的元素
1
var data = [{type:'test0', name:'name1'},{type:'test1', name:'name2'},{type:'test1', name:'name3'}]

1.

1
2
3
4
var findSingle = data.find((dataItem) => { //注意:.find()方法会返回找到的第一个元素,即使有多个符合条件的
return (dataItem.type === "test1")
} // [{type:'test1', name:'name2'}]
);

2.

1
2
3
var filterArr = data.filter((item)=>{ // .filter()方法会筛选出所有符合条件的元素,并组合成新的数组
return item.type == 'test1'
}) // [{type:'test1', name:'name2'}, {type:'test1', name:'name3'}]

区别
find() 返回第一个元素
filter() 返回一个包含所有通过测试函数的元素的新数组

二维数组一维展开(reduce方法)
1
2
3
4
5
var arr = [[1, 2, 4],[3, 3, 4, 5]]
var newArr = arr.reduce(function(a, b){
return a.concat(b)
}, [])
// newArr: [1,2,4,3,3,4,5]

======================================================================

待续……

上一篇:
谷歌浏览器滚动条样式优化
下一篇:
Gis二次开发相关文件处理