javascript - 如何在 Javascript 中基于另一个数组获取多个数组值

标签 javascript arrays

我不知道我的问题的标题是什么,我认为它太复杂了。所以,我有一个数组:

["87080207", "87101133", "91140156"]

和 B 数组:

 ["97150575", "97150575", "90141063"]

这个B数组,我放在html select值上。它们中的每一个(A 和 B 数组)都是相关的。当我选择值 97150575 (B 数组)时,我需要显示 87080207,87101133 (A 数组)。
我已经尝试过,但没有成功。这是我的代码:

var a=[];
var b=[];
var arrayLength = dataComponentValuation.length;
for (var i = 0; i < arrayLength; i++) {
   a.push(dataComponentValuation[i].valuated);
   b.push(dataComponentValuation[i].valuator);
}
var ajoin = a.join();
var bjoin = b.join();
$('#valuatedEmpCompId_before').val(ajoin);
$('#valuator_before').val(bjoin);

select中,我放了一个函数,就是这样:

function emptyValuated() {
    var valby = $("#valBy").val(); //chosen value from select
    var b_valby = $("#valuator_before").val();

    var b_valuated = $("#valuatedEmpCompId_before").val();
    if(b_valby != ''){
        if(valby != b_valby)
        {
            $("#valuatedEmpCompId").val('');
        }
        else{            
             $("#valuatedEmpCompId").val(b_valuated);
        }

    }
    else{      

        $("#valuator_before").val(valby);
        $("#valuatedEmpCompId").val(b_valuated);
    }
}

请帮帮我...

最佳答案

按照建议,您可以使用对象作为对数组 A 的值的引用。

var arrayA = ["87080207", "87101133", "91140156"],
    arrayB = ["97150575", "97150575", "90141063"],
    object = Object.create(null);

arrayB.forEach(function (b, i) {
    object[b] = object[b] || [];
    object[b].push(arrayA[i]);
});

console.log(object);

关于javascript - 如何在 Javascript 中基于另一个数组获取多个数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37720429/

相关文章:

javascript - 核心 JavaScript 函数使错误、警告或通知消息出现?

javascript - video.js:适合缓冲区预加载和响应式全屏渲染吗?

javascript - 如何从数组中的对象访问属性?

c - 使用 csv 文件的输入填充结构体数组

javascript - 如何使用javascript在txt文件的新行中打印数组的每个元素?

python - 在 numpy 数组 Python 中提取列的特定范围

python - 使用字典和数组将点符号字符串转换为嵌套的 Python 对象

Rails Helper 中的 Javascript、Jquery

javascript - 如何用其他模板覆盖 colmodel

javascript - 绝对定位旋转 div 的 Angular