Bootstrap

JS:列表操作


1、列表截取

列表截取:List.slice(start, end),左闭右开

var dataList = [1,2,3,4,5,6]
var resultList = dataList.slice(0, 2)
console.log(resultList)

2、列表数据包含

arr.includes(row) 判断列表中是否包含某一元素,true=包含 false=不包含

var dataList = [1,2,3,4,5,6]
let flag = dataList.includes(5)  // true
let flag1 = dataList.includes(7)  // false

3、列表筛选

const array = [10, 11, 3, 20, 5];
const greaterThanTen = array.filter(element => element > 10);

4、极值操作

// 求列表的最大值
var yData = [150, 230, 224, 218, 135, 147]
Math.max.apply(null, yData)

5、获取列表对象某一属性构建列表

var data = [ {a:1,b:2,c:3}, {a:4,b:5,c:6}, {a:7,b:8,c:9} ];

var a_list = data.map(item => item.a)

6、获取元素在列表中的下标

array.indexOf(item)

7、列表去重

列表去重

var arr = [1, 2, 2, 3];
arr.filter(function (item, index, arr) {
    //当前元素,在原始数组中的第一个索引==当前索引值,否则返回当前元素
    return arr.indexOf(item, 0) === index;
});

按照对象的某一字段去重

const arr = [ { id: 1, name: 'Tom' }, { id: 2, name: 'Jerry' }, { id: 3, name: 'Tom' }, { id: 4, name: 'Jerry' } ];

const uniqueArr = arr.filter((item, index, arr) => { 
	return arr.findIndex(t => t.name === item.name) === index; }
); 
console.log(uniqueArr); // => [{ id: 1, name: 'Tom' }, { id: 2, name: 'Jerry' }]
;