JS 两个对象数组合并并去重

Wesley13
• 阅读 717

JS两个对象数组合并并去重

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
    </body>
</html>
<script type="text/javascript">
    let jsonArr = [
        {
            "ID": "",
            "NO": "1",
            "NAME": "测试对象1"
        },
        {
            "ID": "",
            "NO": "2",
            "NAME": "测试对象2"
        },
        {
            "ID": "",
            "NO": "3",
            "NAME": "测试对象3"
        },
        {
            "ID": "",
            "NO": "4",
            "NAME": "测试对象4"
        },
        {
            "ID": "",
            "NO": "5",
            "NAME": "测试对象5"
        }
        ];

        let jsonArr2 = [
        {
            "ID": "",
            "NO": "3",
            "NAME": "测试对象3"
        },
        {
            "ID": "",
            "NO": "4",
            "NAME": "测试对象4"
        },
        {
            "ID": "",
            "NO": "6",
            "NAME": "测试对象6"
        },
        {
            "ID": "",
            "NO": "7",
            "NAME": "测试对象7"
        }
        ];

        let length1 = jsonArr.length;
        let length2 = jsonArr2.length;
        for (let i = 0; i < length1; i++) {
            for (let j = 0; j < length2; j++) 
            {
                //判断添加的数组是否为空了
                if (jsonArr.length > 0) {
                    if (jsonArr[i]["NAME"] === jsonArr2[j]["NAME"]) {
                        jsonArr.splice(i, 1); //利用splice函数删除元素,从第i个位置,截取长度为1的元素
                        length1--; 
                        console.log(jsonArr2[j]);//重复元素
                    }
                }
            }

        } 
        
        for (let n = 0; n < jsonArr2.length; n++) {
            jsonArr.push(jsonArr2[n]);
        }

        console.log(JSON.stringify(jsonArr)); 
</script>
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Kent_Sun Kent_Sun
3年前
js去除字符串
js去除字符串js<DOCTYPEhtml<html<head<title</title</head<body</body<scripttype"text/javascript"functiondelHtmlTag(str){  returnstr.replace(/<^/g,"");}vars
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
JS高级
<!DOCTYPEhtml<htmllang"en"<head<metacharset"UTF8"<title</title</head<body<script//为内置对象添加原型方法//实例中的方
Stella981 Stella981
3年前
Html 常见标签,css基础样式,css的浮动和清流,浏览器的兼容
1.html模板<!DOCTYPEhtml<html<head<metacharset"UTF8"<title模板</title</head<body</body</html2.DOCTYPE声明放在html文件头部最新HTML5用<!DOCTYPEhtml
Stella981 Stella981
3年前
JS 对象数组Array 根据对象object key的值排序sort,很风骚哦
有个js对象数组varary\{id:1,name:"b"},{id:2,name:"b"}\需求是根据name或者id的值来排序,这里有个风骚的函数函数定义:function keysrt(key,desc) {  return function(a,b){    return desc ? ~~(ak
Wesley13 Wesley13
3年前
HTML5 基础知识(二)
<!DOCTYPEhtml<htmllang"en"<head<metacharset"utf8"/<title</title</head<body</body</html<!DOCTYPEhtml
Wesley13 Wesley13
3年前
JS获取表单元素的值
<html<head<metahttpequiv"contenttype"content"text/html;charsetutf8"<title测试</title</head<body<formid"form1"name"form1"文本框
Stella981 Stella981
3年前
JavaScript:改变 HTML 图像
JavaScript:改变HTML图像1.代码如下:<!DOCTYPEHTML<html<head<metacharset"utf8"/<title改变Html图片</title</head<body<
Stella981 Stella981
3年前
Js使用面向对象和面向过程的方法实现拖拽物体的效果
1.面向过程的拖拽实现代码:!(https://oscimg.oschina.net/oscnet/d680c759957babef2fec0902676eaa35ad9.gif)<!DOCTYPEhtml<html<head<titledragDiv</title