Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

キーの別の配列に基づいてオブジェクト配列を並べ替える-JavaScript


次のような2つの配列があるとします-

const arr1 = ['d','a','b','c'] ;
const arr2 = [{a:1},{c:3},{d:4},{b:2}];

これら2つの配列を受け入れるJavaScript関数を作成する必要があります。関数は、最初の配列の要素に従って2番目の配列を並べ替える必要があります。

最初の配列の要素に従って、2番目の配列のキーを並べ替える必要があります。これにより、次の出力が生成されます-

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 } ]

  1. JavaScript array.keys()

    JavaScriptのarray.keys()メソッドは、配列のキーを持つArrayIteratorオブジェクトを返すために使用されます。 構文は次のとおりです- array.keys() ここで、JavaScriptでarray.keys()メソッドを実装しましょう- 例 <!DOCTYPE html> <html> <body>    <h2>Car Variants</h2>    <p id="test"></p>   &nb

  2. JavaScriptのObject.keys()。map()VS Array.map()

    以下は、JavaScriptでObject.keys()。map()とArray.map()を示すコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title>