다음과 같은 두 개의 배열이 있다고 가정합니다. -
const arr1 = ['d','a','b','c'] ; const arr2 = [{a:1},{c:3},{d:4},{b:2}];
이 두 배열을 허용하는 JavaScript 함수를 작성해야 합니다. 함수는 첫 번째 배열의 요소에 따라 두 번째 배열을 정렬해야 합니다.
첫 번째 배열의 요소에 따라 두 번째 배열의 키를 정렬해야 합니다.
따라서 출력은 다음과 같아야 합니다. -
const output = [{d:4},{a:1},{b:2},{c:3}];
따라서 이 함수의 코드를 작성해 보겠습니다 -
예
이에 대한 코드는 -
const arr1 = ['d','a','b','c'] ; const arr2 = [{a:1},{c:3},{d:4},{b:2}]; const sortArray = (arr1, arr2) => { arr2.sort((a, b) => { const aKey = Object.keys(a)[0]; const bKey = Object.keys(b)[0]; return arr1.indexOf(aKey) - arr1.indexOf(bKey); }); }; sortArray(arr1, arr2); console.log(arr2);
출력
콘솔의 출력은 -
[ { d: 4 }, { a: 1 }, { b: 2 }, { c: 3 } ]