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

JavaScriptの配列で、数値を昇順で並べ替え、文字列をアルファベット順に並べ替える


問題

数値と文字列の配列を受け取るJavaScript関数を作成する必要があります。この関数は、最初に数値が昇順で並べ替えられ、次に文字列がアルファベット順に並べ替えられた単一の配列を返すことになっています。

値は元のタイプを維持する必要があります。

以下はコードです-

const arr = [5, 8, 'car', 'dad', 'amber', 1, 12, 76, 'bat'];
const separateSort = (arr = []) => {
   const sorter = (a, b) => {
      if(typeof a === 'number' && typeof b === 'string'){
         return -1;
      };
      if(typeof a === 'string' && typeof b === 'number'){
         return 1;
      };
      if(typeof a === 'string' && typeof b === 'string'){
         return a.charCodeAt(0) - b.charCodeAt(0);
      };
      return a - b;
   };
   const res = arr.sort(sorter);
   return res;
};
console.log(separateSort(arr));

出力

以下はコンソール出力です-

[
   1, 5,
   8, 12,
   76, 'amber',
   'bat', 'car',
   'dad'
]

  1. 文字列の2次元配列を並べ替え、JavaScriptを使用して対角要素を見つける

    問題 n個の文字列の配列を受け取るJavaScript関数を作成する必要があります。また、配列内の各文字列は正確にn文字で構成されています。 この関数は、最初に配列をアルファベット順にソートする必要があります。次に、左上隅から始まる主対角線に存在する文字によって形成された文字列を返します。 例 以下はコードです- const arr = [    'star',    'abcd',    'calm',    'need' ]; const s

  2. 1、2、3を数字として昇順で並べた配列を出力します

    ここでのタスクは、1、2、および3を数字として含む配列にそれらの数値を出力することであり、それらがそのような数値でない場合は、出力は-1でなければなりません Input : arr[] = {320,123,124,125,14532,126,340,123400,100032,13,32,3123,1100} Output : 123 3123 14532 100032 123400 Since the array have values with digits 1, 2 and 3 it wouldn’t return -1 and print 5 values that C