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

JavaScriptで2つの配列の対応する値を比較する


このように同じ長さの数値の配列が2つあるとします-

const arr1 = [23, 67, 12, 87, 33, 56, 89, 34, 25];
const arr2 = [12, 60, 45, 54, 67, 84, 36, 73, 44];

最初の引数と2番目の引数などの2つの配列を受け取るJavaScript関数を作成する必要があります。次に、関数は両方の配列の対応する値を比較する必要があり、関数は-

を返す必要があります。
  • -1、2番目の配列よりも最初の配列で大きい対応する数の数が2番目の配列で大きい対応する数よりも多い場合

  • 1、最初の配列よりも2番目の配列で大きい対応する数の数が、最初の配列で大きい対応する数よりも多い場合。

  • 0、両方のカウントが等しい場合。

例-

上記の配列の場合、出力は-

になります。
const output = 1;

arr1には4つの対応する要素があり、arr2には5つの対応する要素があるためです。

このためのコードは-

になります
const arr1 = [23, 67, 12, 87, 33, 56, 89, 34, 25];
const arr2 = [12, 60, 45, 54, 67, 84, 36, 73, 44];
const findDominance = (arr1 = [], arr2 = []) => {
   if(arr1.length !== arr2.length){
      return;
   };
   let count = 0;
   for(let i = 0; i < arr1.length; i++){
      const el1 = arr1[i];
      const el2 = arr2[i];
      const diff = el2 - el1;
      console.log(diff)
      count += diff / Math.abs(diff);
   };
   return count / Math.abs(count);
};
console.log(findDominance(arr1, arr2));

出力

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

になります
-11
-7
33
-33
34
28
-53
39
19
1

  1. JavaScriptの2つの配列のisSubset

    2つのリテラル配列を受け取るJavaScript関数を作成する必要があります。関数は、これらのことを念頭に置いて、2番目の配列が最初の配列のサブセットであるかどうかを判断する必要があります- array1のすべての値はarray2で定義する必要があります array1に重複する値が存在する場合は、array2でも考慮に入れる必要があります。 たとえば、arr1 =[a、a]およびarr2=[b、 a]の場合、 aは最初に2回表示されますが、2番目に1回だけ表示されるため、isSubsetはfalseです。 例 このためのコードは-になります const isSubset =

  2. JavaScriptを使用して、2つの配列の対応する各要素にカスタム関数を適用する

    問題 最初の引数としてコールバック関数(2つの引数を取り、値を返す)を取り、2番目と3番目の引数と本質的に同じ長さの2つの配列を受け取るJavaScript関数を作成する必要があります。 入力配列の対応する番号が提供されている場合、関数は、対応する各要素がコールバック関数の戻り値である新しい配列を作成して返す必要があります。 例 以下はコードです- const arr1 = [1, 2, 3, 4]; const arr2 = [5, 6, 7, 8]; const add = (a, b) => a + b; const applyFunction = (callback = (