1.分组 2.排序 3.截取 4.条件查询 5.二维数组整合 6.数据拼接
一、分组:
对数据进行分组,类似于sql的group By。
其原理是:
首先定义一个空对象和一个空数组,然后遍历所有数据,使用if判断,符合条件的存入空数组。
例子: const result = this.allData (总数据)
var map={}, (空对象)
dest=[] (空数组)
for(var i=0;i<result.length;i++){ (遍历总数居)
var ai = result[i]; (提取出每条数据)
if(!map[ai.month]){ (判断需要分组的数据是否在空对象中)
dest.push({ (不在的话就添加到空数组中)
month:ai.month,
result:[ai],
});
map[ai.month]=ai;
}
else{
for(var j=0;j<dest.length;j++){
var dj=dest[j];
if(dj.month==ai.month){
dj.result.push(ai);
break;
}
}}}
二、排序
1.数组排序:sort()方法以字母顺序对数组进行排序
2.反转数组:reverse()方法反转数组中的元素
3.写一个比值函数 function(a,b){return a-b}
例子:function compare(key,boolean){
return function(a,b){
var value1=a[key]
var value2=b[key]
if(boolean===true){ (通过更改boolean值进行排序,true和false对应正序与逆序)
return value1-value2
}else{
return value2-value1
}
}
}
dest.sort(compare('month',true))
三、截取
slice() 方法可通过指定的开始和结束位置,提取字符串的某个部分,并以新的字符串返回被提取的部分。
语法:
stringObject.slice(start, end)
例子: var dataTotal = data.slice(0, 5)
四、条件查询
使用filter函数
filter()方法用于过滤数组元素。该方法创建一个新数组, 其中包含通过所提供函数实现的测试的所有元素。filter()不会对空数组进行检测,也不会改变原始数组。
例子: var fail = arr1.filter(function (a) {
return a.returnflag === 'A'
})
五、二维数组整合
例子:
var a = [1,2,3,4]
var b = [11,22,33,44]
var c =a.map((i,j)=>[i,b[j]]); (散点图涉及)
console.log(c)
六、数据拼接
使用concat()函数
例子:
var a = [1,2];
var b = [3,4,5];
var c = []
var c= a.concat(b);
console.log(c)
大数据可视化涉及的js方法问题
最新推荐文章于 2023-04-07 10:51:42 发布