判断值
判断是否为{}
var data = {};
var arr = Object.keys(data);
alert(arr.length == 0);//true
判断是否为null
value === null
判断数据类型
Object.prototype.toString.call(数据)
[object,object]对象
[object,Array]数组
[object,string]字符串
数据分组
以前的代码
this.total = list.length;
let d = list.map((elem, i) => {
return elem.SpotCheckName;
})//先筛选有多少不同的SpotCheckName
let SNames = [...new Set(d)];//去重,筛选故障种类
SNames.forEach((item, i) => {
let q = list.filter((elem, j) => {
return elem.SpotCheckName == SNames[i]
})
this.formData.push(q)
})//根据种类去分组
console.log(this.formData)
现在的代码
let MachineGroup={}
list.forEach((Machine)=>{
console.log(Machine)
MachineGroup[Machine.SpotCheckName]=MachineGroup[Machine.SpotCheckName]||[]
MachineGroup[Machine.SpotCheckName].push(Machine)
})
this.formData=Object.values(MachineGroup)
数据筛选
提取数组中某些对象形成新的数组
最先想到的做法可能是
this.mainList=list.map((item)=>{
let {MachineNum,Project,Standard,Consumable}=item
return {
MachineNum,Project,Standard,Consumable
}
})
但是可以进一步优化,将解构做到极致
this.mainList=list.map(({MachineNum,Project,Standard,Consumable})=>{
return {
MachineNum,Project,Standard,Consumable
}
})