前端 - 关于两个数组比较问题,javascript

查看:272
本文介绍了前端 - 关于两个数组比较问题,javascript的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

我想把两个数组相同的value值分离出来,最后push到一个数组里面,双重for循环遍历弄了挺久没搞出来,求解决

var arry = ["股票开户", "期贷开户", "基金定股", "我的股东户", "服务中心", "私人顾问", "股票分析", "华泰证券", "股票行情"]
var arry1 = ["股票开户", "期贷开户", "基金定股", "我的股东户", "服务中心", "股票分析", "股票行情"]

最终遍历出来的格式我希望是这样的,如果两个数组比较有相同的,最后一个disabled赋值为 false,不相同赋值为true

var arry3= [
  { label: '股票开户', value: '股票开户', disabled: false },
  { label: '期贷开户', value: '期贷开户', disabled: false },
   .....
  { label: '华泰证券', value: '华泰证券', disabled: true},
];

解决方案

var arry = ["股票开户", "期贷开户", "基金定股", "我的股东户", "服务中心", "私人顾问", "股票分析", "华泰证券", "股票行情"]
var arry1 = ["股票开户", "期贷开户", "基金定股", "我的股东户", "服务中心", "股票分析", "股票行情"]

var arr3 = [];

arry.forEach(function(e,i) {
    var pos = arry1.indexOf(e);

    if (pos > -1) {
        arr3.push({
            label:e,
            value:e,
            disabled:false
        })
        arry1.splice(pos,1);
    } else {
        arr3.push({
            label:e,
            value:e,
            disabled:true
        })
    }
})

arry1.length && arry1.forEach(function(e,i) {
    arr3.push({
        label: e,
        value: e,
        disabled: true
    })
})

console.log(arr3)

这篇关于前端 - 关于两个数组比较问题,javascript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆