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

JavaScriptで配列のインデックスで並べ替える


次のオブジェクトの配列があるとします-

const arr = [
   {
      'name' : 'd',
      'index' : 3
   },
   {
      'name' : 'c',
      'index' : 2
   },
   {
      'name' : 'a',
      'index' : 0
   },
   {
      'name' : 'b',
      'index' : 1
   }
];

そのような配列を1つ取り込むJavaScript関数を作成する必要があります。

関数は、オブジェクトのインデックスプロパティに従って、この配列を昇順で並べ替える必要があります。

次に、関数は、並べ替えられた配列を文字列の配列にマップする必要があります。各文字列は、オブジェクトの対応するnameプロパティ値です。

したがって、上記の配列の場合、最終的な出力は次のようになります-

const output = ["a", "b", "c", "d"];

このためのコードは-

になります
const arr = [
   {
      'name' : 'd',
      'index' : 3
   },
   {
      'name' : 'c',
      'index' : 2
   },
   {
      'name' : 'a',
      'index' : 0
   },
   {
      'name' : 'b',
      'index' : 1
   }
];
const sortAndMap = (arr = []) => {
   const copy = arr.slice();
   const sorter = (a, b) => {
      return a['index'] - b['index'];
   };
   copy.sort(sorter);
   const res = copy.map(({name, index}) => {
      return name;
   });
   return res;
};
console.log(sortAndMap(arr));

出力

そして、コンソールの出力は-

になります
[ 'a', 'b', 'c', 'd' ]

  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のArray.prototype.sort()。

    JavaScript Array.prototype.sort()メソッドは、配列の並べ替えに使用されます。並べ替えの順序は、アルファベット、数字、昇順、降順のいずれかです。 以下は、Array.prototype.sort()メソッドのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-