JSFiddle - React, Tailwind, and code Playground

by jwerre

JavaScript

var firstArray = [{
  id: "1",
  value: 1
}, {
  id: "5",
  value: 0.5
}, {
  id: "3",
  value: 0.25
}, {
  id: "4",
  value: 0.125
}, {
  id: "2",
  value: 0.0625
}];

let secondArray = [{
  id: 1,
  name: "a"
}, {
  id: 2,
  name: "b"
}, {
  id: 3,
  name: "c"
}, {
  id: 4,
  name: "d"
}, {
  id: 5,
  name: "e"
}];

let mappedIds = firstArray.map( ({id}, i) => [+id, i] );
console.log(mappedIds)
let map = new Map( mappedIds );
console.log(map)
secondArray.sort( (a, b) => map.get(a.id) - map.get(b.id) );

console.log(secondArray);