JS设置⼆维数组键值key 项⽬场景:
每⼀列对应是⼀条,并设置对应key值
解决⽅案:
JS⽅案
1let list = [
2 ["腾讯", "百度", "阿⾥巴巴","美团"],
3 [100, 200, 300,400],
4 [10000, 20000, 30000,40000],
5 [9, 99, 999,9999],
6 [6, 66, 666,6666]
7 ]
8 let header = ['公司', '2020-12-31', '2021-06-30','成分','流利程度']
9
10 let result = duce( (obj, key, i) => {
11 obj[i] = list.map(item => item[i]);
12 // console.log(obj[i])
13 // ["腾讯", 100, 1000];
14 obj[i] = duce( (obj2, key, index) => {
15 obj2[key] = obj[i][index];
16 return obj2;
17 }, {})
18 console.log(i)
19 // {公司: "腾讯", '2020-12-31': 100, '2021-06-30': 10000, 成分: 9, 流利程度: 6}
20 if(i>(list[0].length-1)){ delete obj[i]; }
21 return obj;
22 }, [])
23 console.log(result);
24
25
26 // [
27 // {公司: "腾讯", '2020-12-31': 100, '2021-06-30': 10000, 成分: 9, 流利程度: 6},
28 // {公司: "百度", '2020-12-31': 200, '2021-06-30': 20000, 成分: 99, 流利程度: 66},
29 // {公司: "阿⾥巴巴", '2020-12-31': 300, '2021-06-30': 30000, 成分: 999, 流利程度: 666},
30 // {公司: "美团", '2020-12-31': 400, '2021-06-30': 40000, 成分: 9999, 流利程度: 6666}
31 // ]
PHP⽅案
js 二维数组1<?php
2 header("Content-type:text/html;charset=utf-8");
3 $list = [
4 ["腾讯", "百度", "阿⾥巴巴","美团"],
5 [100, 200, 300,400],
6 [10000, 20000, 30000,40000],
7 [9, 99, 999,9999],
8 [6, 66, 666,6666]
9 ];
10 $header = ['公司', '2020-12-31', '2021-06-30','成分','流利程度'];
11 $list2 = [];
12 for ($i=0; $i < count($list[0]); $i++) {
13 $list2[] = array_combine($header, array_column($list, $i));
14 }
15
16 echo "<pre>";
17 print_r($list2);
18 echo "<pre>";
备注
仅供参考,具体情况可能不同,请⾃⾏领悟。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论