【发布时间】:2018-03-28 20:19:27
【问题描述】:
尝试遍历两个数组并找到每个数组的代码,我可能会遗漏某些部分。我需要用这个值构造一个新数组,每个id可以在arrayB中多次出现。根据第一个数组中的 id,我们必须匹配第二个数组(arrayA)中的 id 并获取代码
let arrayA=[
{"breadcrumb":{id: "abdc4051"}, type:"details"},
{"breadcrumb":{id: "abdc4052"}, type:"details"},
let arrayB=[
{"breadcrumb": {id: "abdc4051",code: "mike", length:"short"}},
{"breadcrumb": {id: "abdc4051", code: "pohan", length:"long"}}, {"breadcrumb": {id: "abdc4052", code: "junior", length:"short"}}]
let arrayC = [];
// output expected
[{"id":"abdc4051", shortLength: "mike", longLength:"pohan"}, {"id":"abdc4052", shortLength: "Junior", longLength:"-"}]
// tried this
function isBiggerThan10(element, index, array) {
return element > 10;
}
arrayA.forEach(function(element){
arrayC.push({
id:element.id,
firstName:(arrayB.find(
e => e.attributes.code==="mike")).breadCrumbs.shortLength,
lastName:(arrayB.find(
e => e.code==="pohan")).breadCrumbs.longlength
})
});
console.log(arrayC);
【问题讨论】:
-
我不确定我是否能够正确理解您的问题
-
[{"id":"abdc4051", firstName: "mike", lastName:"pohan"}, {"id":"abdc4052", firstName: "Junior", lastName:"- "}] 这应该是基于 arrayA 和 arrayB 值的输出
-
我觉得同样的问题一天会被问三十次左右
标签: javascript jquery loops lodash