fork of problem 5
by Tom M
JavaScript
let a = [3,11];
let b = [2, 3, 3, 3]; //3s from here
function objectMaker(array, object) {
array.forEach(function(x) {
if (object[x]) {
object[x] += 1;
} else {
object[x] = 1;
}
})
return object;
}
let objectA = objectMaker(a,{});
let objectB = objectMaker(b,{});
let entriesB = Object.entries(objectB);
let entriesA = Object.entries(objectA);
function getHigher(a,b) {
if (a > b) {
return a;
} else if (a === b){
return a;
} else {
return b;
}
}
let final = [];
for (let i = 0; i < getHigher(entriesA.length, entriesB.length); i++) {
if (entriesA[i][0] == entriesB[i][0]) {
final.push(Math.pow(entriesA[i][0], getHigher(entriesA[i][1], entriesB[i][1])));
} else if (entriesA[i]) {
final.push(Math.pow(entriesA[i][0]), entriesA[i][1]);
} else if (entriesB[i]) {
final.push(Math.pow(entriesB[i][0]), entriesB[i][1]);
}
}
console.log(final);