-
2021-10-11 15:52:31
项目中遇到一个问题,需要将后台返回的两个数组合并到一个map中,并且数组中的每个元素分别赋值给map的value属性和name属性。
const source = [ "202101", "202102", "202103" ,"202104" ]; let map = []; source.map((item, index) => { map.push(Object.assign({}, {value:item})) }) console.log(map); // 运行结果 -> Array [Object { value: "202101" }, Object { value: "202102" }, Object { value: "202103" }, Object { value: "202104" }]
1、声明一个数组,并将数组的每个元素赋值给map的value属性;
const source1 = [ "name202101", "name202102", "name202103" ,"name202104" ]; let map1 = []; source1.map((item, index) => { map1.push(Object.assign({}, {name:item})) }) console.log(map1); // 运行结果 -> Array [Object { name: "name202101" }, Object { name: "name202102" }, Object { name: "name202103" }, Object { name: "name202104" }]
2、声明第二个数组,并将数组的元素赋值给map2的name属性;
map1.map((item,index)=>{ map[index].name = item.name }) console.log(map); // 运行结果 -> Array [Object { value: "202101", name: "name202101" }, Object { value: "202102", name: "name202102" }, Object { value: "202103", name: "name202103" }, Object { value: "202104", name: "name202104" }]
3、 将map1的属性添加到map中,完成两个数组分别赋值给map的value和name属性;
注:非专业前端,最终解释权归本人所有。 反正做出了我想要的效果。
更多相关内容 -
javascript合并两个数组最简单的实现方法
2020-12-01 00:04:26在开发的过程中,我们很多时候会遇到需要将两个数组合并成一个数组的情况出现。 var arr1 = [1, 2, 3]; var arr2 = [4, 5, 6]; // 将arr1和arr2合并成为[1, 2, 3, 4, 5, 6] 这里总结一下在JavaScript中合并两个数组... -
js合并两个数组生成合并后的key:value数组
2020-10-18 13:14:53主要是介绍了js将两个数组合并为类json方式,需要的朋友可以参考下 -
Vue多个数组合并成一个,分别根据数据返回状态显示不同的状态图片
2021-12-23 10:58:23Vue多个数组合并成一个,分别根据数据返回状态显示不同的状态图片 1.首先根据类型判断 2.根据类型判断状态 3.显示图片 <el-scrollbar style="height:200px;"> <div v-for="(item,index) in chartData....Vue多个数组合并成一个,分别根据数据返回状态显示不同的状态图片
1.首先根据类型判断
2.根据类型判断状态
3.显示图片<el-scrollbar style="height:200px;"> <div v-for="(item,index) in chartData.meterList" :key="index"> <div> <div style="width: 100px; height: 100px; background-color: #000000;"> //根据类型,根据类型里的状态 <img :src="chartData.imgObj[item._type][item.event_state]" /> </div> {{ item.meter_name }} {{ item.state }} </div> </div> </el-scrollbar>
多个数组合并,添加不同状态
export default { data() { return { chartData: { meterList: [], //door状态,如果状态值是1,2,可以把第一个' '去掉,若果是从零开始的就需要加上 imgObj: { door: ['', require('@/assets/img/door0.png'), require('@/assets/img/door1.png')], smog: '', } }, } }, methods: { getNewMonitor() { getNewMonitor({ station_id: this.station_id, time: this.curDate }).then(res => { if (res.result === 1) { this.chartData.meterList = [...res.data.doorList.map(i => ({ ...i, _type: 'door' })), ...res.data.smogList.map(i => ({ ...i, _type: 'smog' }))]; } else { console.log(2) } }) } } }
-
javaScript两个数组转成一个键值对数组
2020-04-18 21:49:00最近在做的一个项目:由于是我们前端要显示的数据是从别人平台查询出来的,我们只提供查询参数,和向他们发起查询请求,其他的任何东西都不是我们操作的,而他们返回呢直接放回一个二维数组,而且还是全中文返回,...问题描述
问题背景描述:
最近在做的一个项目:由于是我们前端要显示的数据是从别人平台查询出来的,我们只提供查询参数,和向他们发起查询请求,其他的任何东西都不是我们操作的,而他们返回呢直接放回一个二维数组,而且还是全中文返回,英文的字段…这个前端 是由我来负责的 所以我来吐槽!!!!一下他们肯定是懒得写文档给 调用方解释这个字段什么什么意思,所以直接返回给调用方中文格式了 我们的后台其实也是可以转的,但是后台没转,直接给前端来转... fuck(响应端)
模拟返回数据格式
给你们模拟下他们返回的数据格式:{ "error": 0, "description": "成功", "value": [ { "tableName": "", "tableCnName": "", "deptId": "", "deptName": "", "columnCount": 17, "rowCount": 5416, "columns": [ "身份证件号码", "姓名", "出生日期", "工作单位", "发放周期", "123类型", "发放标准", "始发年月", "终止年月", "123日期", "手机号码", "镇街", "来源", "更新时间", "是否监督对象", "多发周期", "多发金额" ], "rows": [ [ "4XXX68219XXXXXXX", "张三", "1913-02-02", null, " ", "模拟", 150, "2010-07-01", "2012-07-01", "2010-08-08", null, "天津", "123发放表", "2019-05-10", null, 23, 3450 ], [ "4XXX68219XXXXXXX", "陈秀华", "1939-07-14", null, " ", "模拟", 30, "2013-10-01", "2016-09-01", "2016-07-29", null, "北京", "123发放表", "2019-02-18", null, 2, 60 ] ] } ] }
我们前端用的是Layui的数据表格,这种格式Layui数据表格不能自动解析…Layui能解析的是[{}],这种对象数组键值对格式… 害 疫情在此 我也不敢多比比划划。行吧 还是我来解决吧!
两个数组转成一个键值对数组
因为很多页面需要用到,所以我写了个通用的
** * @effect 解析政数局返回的数据格式给layui的数据表格渲染 * @param data 数组 * return [{...}] */ function GovernmentData (data) { if (!$.isArray(data)) { console.log(`传入的${data}不是数组`); return; } if (data.length <= 0) { console.log(`传入的${data}不能为空`); return; } let tableArrayObj = []; // 获取传进来的数组里面的属性 for (let i = 0; i < data.length; i++) { // 保证每个值都能被改造成键值对 for (let j = 0; j < data[i].rows.length; j++) { let tableObj = {}; // 开始改造,获取行列值的每一项,和行列名的每一项 for (let k = i; k < data[j].rows[j].length; k++) { // 这句话的意思是 tableObj['列名'] = '列值' tableObj[data[i].columns[k]] = data[i].rows[j][k]; } // 上面循环完就是行值和行列名匹配完成 // 既然完成了直接push进去 tableArrayObj.push(tableObj); } } // 我们这个是页面之间共用的 直接返回给调用方 // 返回格式已成 [{},{},{},{}],,这样 return tableArrayObj; }
至此收工.
改天配上图来,现在在家写的这篇文章,连不上他们的内网,拿不到数据,但我保证这些代码你贴上去保证就能用了!
数组里面有对象,对象里面有数组
经过上面代码改造为:
有用的话记得点赞哦!!!
-
多个数组合并成一个
2021-06-26 00:57:18//Java中如何把两个数组合并为一个 public class gog { public static void main(String[] args) { String [] str1 = {"J","a","v","a","中"}; String [] str2 = {"如","何","把","两","个",...如何优雅的将多个数组合并成一个数组
import java.util.Arrays; //Java中如何把两个数组合并为一个 public class gog { public static void main(String[] args) { String [] str1 = {"J","a","v","a","中"}; String [] str2 = {"如","何","把","两","个","数","组","合","并","为",
js 多个数组合并 每一个值对应一个数组
var a=['北京','天津','河北','上海','广东']; var b=['海淀','滨海新var a=['北京','天津','河北','上海','广东'];var b=['海淀','滨海新区','石家庄','浦东','深圳'];var c=['黄庄','海港','新华区','陆家嘴','福田区'];var d=a.map((o,i)=>[o,b[i],c[i]]);
php 两个数组怎么合并成一个
array array_merge ( array $array1 [, array $... ] )array_merge() 将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。 如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。
java数组合并问题 三种字符数组合并的方法 public static String[] getOneArray() { String[] a = { "0", "1", "2" }; String[] b = { "0", "1", "2" }; String[] c = new String[a.length + b.length]; for (int j = 0; j < a.length; ++j) { c
php怎么将两个数组合成一个数组?
$a = array(0 =>123, 1 => 456 , 2 =>789); $b = array(0 => 'abc' , 1 PHP 中的 array_merge()、array_merge_recursive()函数可以实现 array_merge() 函数把两个或多个数组合并为一个数组。 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的)。如果数组是数字索引的。
java字符串数组合并 怎么合并成一个数组?
php 两个数组合并成为一个二维数组
$arr1 = array(1,2,3,4,5,6,7,8,9,10) $arr2 = array(1,2,3,4,5,6,7,8,9PHP 中的 array_merge_recursive() 函数可以实现 将一个或多个数组的元素的合并起来,一个数组中的值附加在前一个数组的后面。并返回作为结果的数组。 当有重复的键名时,值不会被覆盖,而是将多个相同键名的值递归组成一个数组。
php数组合并两个数组(一个数组做键名,另一个做值)
有两个数组: $arry_a,$arry_b 合并为一个新数组:$arry_ab,要CSS布局HTML小编今天和大家分享$arry_a中$array_ab=array_combine($arry_a,$array_b); 这是数组的PHP内置函数 ,函数括号中的前一个数组的值为新数组的索引。
excel公式两个数组,合并成一个数组
比如 数组一A1:A4:{北京;上海;广州;深圳} 数组二B1:B4:{第一;第二;第C1公式下拉:=A1&B1或者用这公式也行:=CONCATENATE(A1,B1) 提问中用到数组这个概念,数组一般是用于数组公式,即A1:A4与B1:B4混合后,用于其它函数的再次运算,如果指的是这个数组,那么用以下方式: =A1:A4&B1:B4 注意:用于其它函数的再次运
两个String数组怎么合并成一个数组?
import java.util.Arrays; //Java中如何把两个数组合并为一个 public class gog { public static void main(String[] args) { String [] str1 = {"J","a","v","a","中"}; String [] str2 = {"如","何","把","两","个","数","组","合","
-
JavaScript如何把两个数组对象合并过程解析
2020-10-16 06:03:53主要介绍了JavaScript如何把两个数组对象合并过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 -
多个数组合并成一个,多个对象合并成一个
2018-09-14 15:51:11多个数组合并成一个 ver arrry=arr1.concat(arr2).concat(arr3).concat(arr4).concat(arr4) 两个对象合并成一个。 let para={name:'1'}; let para2={name2:'1'}; .... ... -
JS合并两个数组的3种方法详解
2020-12-13 10:50:49有两个数组a、b,需求是将两个数组合并成一个。方法如下: 1、concat js的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。 var c = a.concat(b); //c=[1,2,3,4,5,6]; 这里有一个问题,... -
js把两个json数组根据相同键值合并成一个数组
2020-12-19 12:53:47js 合并两个数组weixin_357213204462018-09-17js把多个数组合并为一个数组jianqiangdexiaohai5702019-05-08js 两个数组(对象)去重合并weixin_4080507937632018-12-06js数组合并(一个数组添加到另一个数组里面)方法... -
JS将两个数组合并成一个对象
2020-11-11 15:13:41将两个数组合并成一个对象数组 let options = []; let times = [30, 60, 120, 300, 420, 540, 720, 900, 1200]; let timesDesc = ["30分钟", "1小时", "2小时", "5小时", "7小时", "9小时", "12小时", "15小时... -
JavaScript把两个数组对象合并成一个一一对应的数组对象
2021-02-24 16:55:55var obj1 = [{ "id": 980550455852, "model": "XQG70-S1208FW", "color": "白", "invStatusName": "正品", "bactualQty": 10947, "brealyQty": 11000, "bavailQty": 53 }, { "id": 980550566221, ... -
JavaScript 将两个数组并为一个json对象
2021-08-31 17:23:16var jsonArr = []; var keyArr = ['a','b']; // json key var valueArr = [1,2]; // json value for(var i = 0;i<keyArr.length;i++){ var json = {}; for(var j=0;j<... json.value = valu. -
Js基础三:将两个数组合并成一个新数组
2022-03-30 09:28:31将两个数组合并成一个新数组 话不多说直接上代码 var arr1 = ['1','2','3','4'] var arr2 = ['张三','李四','王五','麻子'] var arr3 = [] var arr4 = [] arr1.map((item,index) => { arr3.push({id:item}) }) ... -
js 两个数组(对象)去重合并
2021-05-27 02:00:19项目前台代码中需要用到数组的去重操作,其实也不难,就算是对象数组,判断下对应的属性值也是可以实现的,但是如果我实现的话肯定是最常见的双重for循环,加个flag标记,老套的不能行了,想了想,还是上网找点高级... -
vue实现两个数组的合并
2022-01-08 15:10:57vue做一个列表的时候。当列表有多条则需要分多次来请求通过,然后每次请求都一一塞入这个列表的末尾去,也就是页面无刷新加载, 初次访问该页面时,第一个数组list的数据为...这样上面的两个数组就合并成一个数组了。 -
java中两个byte数组实现合并的示例
2020-12-19 16:55:59java中两个byte数组实现合并的示例今天在于硬件进行交互的过程中,要到了了需要两个数组进行合并,然后对数组进行反转和加密操作,以下是两个byte数组合并的方法。/**** @param data1* @param data2* @return data1 与 ... -
Js 如何将两个数组合并
2020-05-29 09:15:25方法一 使用concat var a = [1,2,3]; var b = [4,5,6]; var c = a.concat(b);...在合并数组的时候,可以首先判断数组的大小,以大的合并小的显然速度会快一些 如果不希望改变数组的话,建议使用concat ... -
js合并两个数组的三种方法
2022-05-09 15:17:52前提:两个数组a=[1,2,3,4]、b=[5,6,7],将其合并为一个数组 1. concat //js的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。 var c = a.concat(b); //c=[1,2,3,4,5,6,7]; //concat方法... -
关于JS合并两个数组的方法
2022-05-05 15:21:28有两个数组a、b,需求是将两个数组合并成一个。 方法如下:1、concat js的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。 var c = a.concat(b);//c=[1,2,3,4,5,6]; 这里有一个问题,... -
如何使用JS将两个数组合并为一个数组
2019-09-27 19:03:37如何使用JS将两个数组合并为一个数组 方法1 使用JS自带的concat方法,它能够把该方法中的参数追加到指定数组中,形成一个新的连接数组,但是这个方法有个不好之处就是会造成一些资源浪费,因为如果要进行 concat() ... -
用JS将两个数组的数据合并成一个数组对象
2022-07-08 19:29:35注:两个数组的长度必须一致! -
js把两个数组对象合并成一个一一对应的数组对象
2021-01-18 09:44:55vue做了一个简单的天气demo,其中想把天气指数的数据中每条加一个我找的图片,使用js的api实现,我工作中使用的次数也较少,记录一下。 请求的天气数据:lifeIndexData 自己的图片数据:arr 最终实现:this.... -
js把多个数组合并为一个数组
2020-11-12 10:13:34//concat() 连接两个或更多的数组,并返回结果。 //把多个数组合并为一个数组 var arr1 = [0,1,2]; var arr2 = [3,4,5]; var sumData = []; sumData= sumData.concat(arr1).concat(arr2) ; -
JS将两个数组合并成一个对象数组
2020-08-12 10:22:32将两个数组合并成一个对象数组 let options = []; let times = [30, 60, 120, 300, 420, 540, 720, 900, 1200]; let timesDesc = ["30分钟", "1小时", "2小时", "5小时", "7小时", "9小时", "12小时", "15小时", ... -
vue多个数组合并
2022-07-20 17:42:00vue多个数组合并。 -
JS中将两个数组合并成一个数组
2021-07-26 10:05:531.Array.prototype.push 可以实现两个数组合并 var arr1=new Array("1","2","3"); var arr2=new Array("4","5","6"); Array.prototype.push.apply(arr1,arr2); console.log(arr1) 2.使用JS自带的concat方法,它... -
使用JS两个数组的数据合并成一个数组对象形式数据
2022-05-13 15:05:02JS合并两个数组数据为数组对象形式 let a=['成都','北京','广州','香港'] let b=[987,890,156,991] let c=a.map((name,i)=>({name,value:b[i]})) console.log(c) 输出结果为: -
Vue进阶(贰零壹):JS合并两个数组方法详解
2021-10-24 18:10:26有两个数组a、b,需求是将两个数组合并成一个。实现方法如下: 二、实现 2.1 concat ES5的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。 var c = a.concat(b); //c=[1,2,3,4,