首页 > 其他分享 >jq 数组对象,重复数据进行合并

jq 数组对象,重复数据进行合并

时间:2023-11-17 10:34:04浏览次数:37  
标签:pre ip6addr curr 重复 ip jq exist 数组 ifname

  var bindif = [{         "ifname": "Ge0/2/1",         "ip": "20.1.1.1",         "mask": "255.255.255.0"     }, {
        "ifname": "Ge0/2/5",         "ip6addr": "2000::254"     }, {         "ifname": "Ge0/2/5",         "ip": "40.1.1.1",         "mask": "255.255.255.0"     }];
    var result = bindif.reduce(function (pre, curr) {         var exist = pre.find(function (dt) {             return dt.ifname === curr.ifname;         });              if(exist) {             if(curr.ip && exist.ip6addr){                     exist.ip = curr.ip;                     exist.mask = curr.mask;             }             if(curr.ip6addr && exist.ip){                 exist.ip6addr = curr.ip6addr;             }         } else {             pre.push(curr);         }                  return pre;     }, []);     console.log(result);

标签:pre,ip6addr,curr,重复,ip,jq,exist,数组,ifname
From: https://www.cnblogs.com/chenhongcai/p/17838093.html

相关文章

  • 数组下标运算符[]
    数组表示一块连续的特定类型对象组成的空间结构,指针通俗指代某个对象的地址(其实包含了地址和地址上对象大小两层意思),数组和指针不能等同。也许唯一的联系是,数组的运算采用指针的方式实现。所以当我们定义一个数组array时,数组array在大多数表达式中会转换成首元素的指针。而很多......
  • 汇编-SIZEOF返回数组字节总数
     SIZEOF操作符的返回值等于LENGTHOF与TYPE的返回值的乘积.386.modelflat,stdcall.stack4096ExitProcessPROTO,dwExitCode:DWORD.dataintArrayWORD32DUP(0).codemainPROCmoveax,SIZEOFintArray;EAX = 00000040h=64INV......
  • 十、数组
    十、数组1、数组的概念1)引出数组需求:学校为了统计学生的信息,需要设计一个程序,要求如下,一共有十个学员,要求依次输入各位学员的学号,并将其打印出来。#include<iostream>intmain(){intstudentId1,studentId2,studentId3,studentId4,studentId5;std::cin>>s......
  • Java数组05:数组的使用
    publicclassArrayDemo03{publicstaticvoidmain(String[]args){int[]arrays={1,2,3,4,5};//打印全部的数组元素for(inti=0;i<arrays.length;i++){System.out.println(arrays[i]);}System.out.pr......
  • 数组类算法题——合并非递减数组
    合并非递减数组题目:给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应......
  • Java数组03:三种初始化及内存分析
    声明的时候数组并不存在,只有创建的时候数组才存在  publicclassArrayDemo02{publicstaticvoidmain(String[]args){//静态初始化:创建+赋值int[]a={1,2,3,4,5,6,7,8};System.out.println(a[0]);//动态初始......
  • Java数组02:数组的声明和创建
    ublicclassArrayDemo01{publicstaticvoidmain(String[]args){//数组类型int[]nums;//intnums[];声明一个数组nums=newint[10];//这里面可以存放10个int类型的数字;创建一个数组//给数组赋值for(inti=0;i<=9;+......
  • 实验4 C语言数组应用编程
    1实验任务1task1_1源代码1#include<stdio.h>2#defineN43voidtest1(){4inta[N]={1,9,8,4};5inti;6//输出数组a占用的内存字节数7printf("sizeof(a)=%d\n",sizeof(a));8//输出int类型数组a中每个元素的地址、值9for(i=0;i<N;......
  • 找出一个字符串中出现次数最多的一个字符 找出重复签到的同学
    7-2找出一个字符串中出现次数最多的一个字符找出一个字符串中出现次数最多的一个字符。输入格式:给出一个字符串,字符串的长度不大于10^6,不区分大小写,字符串中可能包含'A'-'Z','a'-'z',''字符。输出格式:分别输出出现最多次数的字符(如果为字母,输出小写字母),出现的次数,用......
  • Promise.all(iterable) 参数可以不是数组,但必须具有 Iterator 接口,且返回的每个成员
    下面关于Promise的all方法说法错误的是()Apromise.all(iterable),参数是一个数组B只有这个数组中的所有promise实例都resolve之后才会触发其返回的promise实例的thenC只要其中有任何一个promise实例被reject,那么最终的promise实例将触发catchD触发then时可以只带上iterable......