JavaScriptで配列内にfalse値が含まれているか確認する方法
JavaScriptで配列要素のfalse値をチェックする方法
JavaScriptで配列の要素にfalse値が含まれているかどうかを確認したい場合は、Object.values()メソッドを使用します。このメソッドはオブジェクトが持つすべての値を配列として取得できるため、some()メソッドと組み合わせることで、ネストされたデータ構造の中からfalse値を効率的に検出できます。
今回の例では、顧客情報(customerDetails)の中にある「isMarried」プロパティがfalseになっている項目が1つでも存在するかどうかを判定します。some()は、配列内の少なくとも1つの要素が条件を満たしていればtrueを、1つも満たしていなければfalseを返します。
サンプルコード
const details = [
{
customerDetails: [
{
isMarried: true
},
{
isMarried: true
}
]
},
{
customerDetails: [
{
isMarried: true
},
{
isMarried: true
}
]
}
]
const isNotMarried = Object.values(details)
.some(({customerDetails})=>customerDetails.some(({isMarried})=>!isMarried));
console.log(isNotMarried);
ポイントは、内側のsome()の中で!isMarriedを使って「結婚していない(false)」状態を判定している点です。外側のsome()がすべての顧客データを走査し、ひとつでも該当があればtrueが返されます。
プログラムの実行方法
上記のプログラムを実行するには、Node.js環境で以下のコマンドを使用します。
node fileName.js
ここでは、ファイル名を「demo75.js」としています。
実行結果
このプログラムを実行すると、以下のような出力が得られます。
PS C:\Users\Amit\JavaScript-code> node demo75.js false
今回のサンプルでは、すべての顧客のisMarriedがtrueであるため、false値は存在せず、結果としてfalseが出力されます。もし一箇所でもisMarried: falseが含まれていれば、結果はtrueになります。
-
JavaScriptのArray.flat()メソッドとは?使い方をわかりやすく解説
Array.flat()メソッドの基本JavaScriptのArray.flat()メソッドは、ネストされた(入れ子になった)配列を、指定した深さまで再帰的に平坦化(フラット化)するためのメソッドです。元の配列は変更されず、新しい平坦化された配列が生成される点が特徴です。引数には平坦化の深さ(depth)を数値で指定します。深さを指定しない場合のデフォルト値は「1」です。また、「Infinity」を指定すると、どれほど深くネストされた配列でも完全に平坦化できます。構文arr.flat(depth)depth(省略可能):ネストされた配列を展開する深さ。デフォルトは1。サンプルコード以下は、Ar
-
JavaScriptのArray.prototype.includes()メソッドとは?配列内に特定の要素が含まれるか判定する方法
Array.prototype.includes()メソッドとは JavaScriptのArray.prototype.includes()メソッドは、配列の中に特定の要素が含まれているかどうかを判定するためのメソッドです。要素が見つかった場合はtrue、見つからなかった場合はfalseを返します。 基本構文 arr.includes(searchElement[, fromIndex]) searchElement:検索対象となる要素を指定します。 fromIndex(省略可能):検索を開始するインデックス位置です。省略した場合は先頭(0)から検索されます。 サンプルコード 以下は、in