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

配列JavaScriptから最も近い数を取得します


たとえば、数値の配列と数値を入力として受け取り、その配列に存在する最も近い値をその数値に返す関数を作成する必要があるとします。

例-

closest([45,61,53,98,54,12,69,21], 67); //69
closest([45,61,53,98,54,12,69,21], 64); //61

それでは、そのためのコードを書いてみましょう。

Array.prototype.reduce()メソッドを使用して差を計算し、reduce関数から最小の差を返します。その最小の差と検索した数の合計が、必要な数になります。

これがこのコードです-

const closest = (arr, num) => {
   return arr.reduce((acc, val) => {
      if(Math.abs(val - num) < Math.abs(acc)){
         return val - num;
      }else{
         return acc;
      }
   }, Infinity) + num;
}
console.log(closest([45,61,53,98,54,12,69,21], 67));
console.log(closest([45,61,53,98,54,12,69,21], 64));

出力

コンソールでのこのコードの出力は-

になります
69
61

  1. JavaScriptを使用して配列内の特定の番号に最も近い2つの要素を検索する

    問題 ソートされた整数の配列arrを最初の引数として受け取り、ターゲット番号を2番目の引数として受け取るJavaScript関数を作成する必要があります。 この関数は、配列arrに存在し、ターゲットに最も近い2つの数値の配列を返す必要があります。出力配列も昇順で並べ替える必要があります。 たとえば、関数への入力が 入力 const arr = [1, 2, 3, 4, 5]; const target = 3; 出力 const output = [2, 3]; 例 以下はコードです- const arr = [1, 2, 3, 4, 5]; const target = 3;

  2. JavaScript配列でMongoDBデータベースを取得しますか?

    JavaScript配列でMongoDBデータベースを取得するには、runCommand()を使用できます。以下は、JavaScript配列でMongoDBデータベースを取得するためのクエリです > use admin; switched to db admin > allDatabasesDetails = db.runCommand({listDatabases: 1}); これにより、次の出力が生成されます {    "databases" : [       {