网站搜索内容关键词变色 JS实现唤醒浏览器打印功能/JS批量打印 获取URL参数与判断是否包含某个参数 JS数组中插入json和删除数组中指定值 网页唤醒app:若不存在则下载 解决window.open被拦截问题 js拼接多json数组 两个数组对比,去重 正则表达式 姓名,前两个字变为*号 input操作 阿拉伯数字转大写 数字转大写 js获取本月所有周六日 获取本月1号到昨天的日期 单页面Vue应用 数组or字符串操作 JS复制文本

两个数组对比,去重

首页 > 前端开发 > javascript 更新日期:2022-02-25 11:25:28

假设有A和B两个div。A div中,存放了三个时间段。B div中,存放了二十四个时间段。这二十四个时间段中,有三个时间段,和A div中的三个相同。这时候,要将B div中的三个与A中一样的时间段去掉……

大概就是这样的逻辑。不过以下demo,B div的数据,是通过ajax向后台获取的。通过对比,再创建B div的数据。而A的数据,则是一开始就有的。

var data = data;
// 获取已放号时间段
var UpdateOrderForm_time = $(".UpdateOrderForm_time");
// 循环数据组二
for(var i=0; i<data.length; i++){
        // 设置一个开关
    var isTrue = false;
        // 循环数据组一
        for(var a=0; a<UpdateOrderForm_time.length; a++){
            // 获取数据组二的单一数据
            var xianpin = data[i].start+"-"+data[i].end;
            // 将数据组二的单一数据和数据组二的数据对比,如果有相同的,则break跳出循环
            if(xianpin == UpdateOrderForm_time.eq(a).find("span").eq(0).text().trim()){
                // 如果有,则开关为true
                isTrue = true;
                // 程序跳出
                break;
            }
        }
        // 如果isTrue不为ture
        if(!isTrue){
            // 拼接字符串
            var html = "<div _start='"+data[i].start+"' _end='"+data[i].end+"' class='s'><div class='sTitle'>"+data[i].start+"-"+data[i].end+"</div><div class='sText'><input class='layui-input' type='number' value='' placeholder='可为空' class='quantum_val' /></div></div>";
            // 只给数据组二,创建不
            $(".quantum").append(html);
        }
}


标题导航