# 自己项目中的使用记录
# json 相关
对象:由花括号括起来的逗号分割的成员构成;
成员:是字符串键和值(对象、数组、数字、字符串或者三个字面值(false、null、true 英文必须小写))由逗号分隔的键值对组成;
# json中 键值对的位置调整
指定某个键值对的位置
//arr 传入的就是json [{value:xxx,label:xxx,挡车工:xxx},{}]
// 要求是:label value这个顺序,后面的不管
//数据格式: [{label:xxx,value:xxx,挡车工:xxx},{}]
changeJsonKeyValueOrder(arr) {
let newArr = []
let len = arr.length
for (let i = 0; i < len; i++) {
let obj = arr[i]
// 获取key 将key数据处理成 label value xxx 格式
let keyArr = Object.keys(obj)
// 处理label 到 第一的位置
keyArr.splice(keyArr.indexOf('label'), 1)
keyArr.splice(0, 0, 'label')
// 处理value 到 第二的位置
keyArr.splice(keyArr.indexOf('value'), 1)
keyArr.splice(1, 0, 'value')
// console.log('keyArr', keyArr)
let newObj = {}
for (let j = 0; j < keyArr.length; j++) {
newObj[keyArr[j]] = obj[keyArr[j]]
}
newArr.push(newObj)
}
console.log('处理好的json数据', newArr)
return newArr
},
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 数组相关
# 分组 根据获取的数组某个字段分组
描述 获取一个数组,处理数组 根据数组内的一个字段分组
// data 就是要处理的数据
// key 是根据数组的哪个字段分组 比如:如下图的key这个字段应该是label
getGroup(data, key) {
let groups = {};
data.forEach((e) => {
let value = c[key];
groups[value] = groups[value] || [];
groups[value].push(e);
});
return groups;
},
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11

← ES6