JavaScriptで配列のすべての値が指定した上限値より小さいかを確認する方法
問題
数値の配列と1つの数値を引数として受け取るJavaScript関数を作成する必要があります。この関数は、配列内のすべての要素が第2引数として渡された数値(上限値)よりも小さい場合に true を、それ以外の場合は false を返すものとします。
解決アプローチ
このような判定には、配列の every() メソッドを使うのが最もシンプルで効率的です。every() メソッドは、配列内のすべての要素が指定したテスト条件を満たしているかどうかを判定し、ブール値(true / false)を返します。
コード例
以下が実際のコードです。
const arr = [5, 34, 23, 14, 78, 45, 78];
const limit = 99;
const checkEvery = (arr = [], limit = 1) => {
const allSmaller = arr.every(el => {
return el < limit;
});
return allSmaller;
};
console.log(checkEvery(arr, limit));出力
true
コードの解説
上記の例では、配列 [5, 34, 23, 14, 78, 45, 78] の各要素が 99 未満であるかを every() メソッドで確認しています。すべての要素が99より小さいため、最終的に true が出力されます。
また、every() メソッドには便利な特性があります。配列内に1つでも limit 以上の値が見つかった時点で、残りの要素の検査を中断して即座に false を返します。そのため、要素数の多い配列でもパフォーマンス面で優れた動作を実現できます。
-
JavaScript配列から一意の値(重複なし)を取得する方法
JavaScriptの配列に含まれる重複した値を取り除き、一意の値(ユニークな値)だけを取得したい場合は、Setオブジェクトを使うのが最もシンプルで効率的な方法です。 Setは同じ値を1つしか格納できないデータ構造のため、配列をnew Set()に渡すだけで自動的に重複が排除されます。その後、スプレッド構文([...set])を使えば、簡単に元の配列形式へ戻すことができます。 サンプルコード 以下は、JavaScriptの配列からすべての一意の値を取得する実際のコード例です。 <!DOCTYPE html> <html lang=ja> <head> <
-
【JavaScript】配列内のネストされたオブジェクトの値を合計する方法
この記事では、JavaScriptを使って、配列内にネストされた(入れ子構造の)オブジェクトの値を合計する方法を解説します。サンプルコードでは、JSONデータの複数階層に格納された数値(costNum)を順番に取り出し、その合計をブラウザ上に表示します。 コード例 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=d