【JSリファレンス】Array.prototype.some()
更新日:2024/06/14
Array.prototype.some()は、Arrayオブジェクト(Arrayコンストラクターのインスタンス)のプロトタイプチェーンに組み込まれるメソッドです。
配列内に特定の条件と一致する値があるかどうかを判定します。
具体的には、各配列要素毎にコールバック関数を呼び出し、コールバック関数が true を呼び出した時点で、結果が true となります。
最後までコールバック関数が false を返した場合は、結果が false になります。
欠番インデックスは、コールバック関数呼び出しません。
■構文
Array.prototype.some ( callbackfn [ , thisArg ] )
- callbackfn: 各要素毎に呼び出される関数
- thisArg: 省略可能。
callbackfnに渡されるthis値※this値を渡す場合、callbackfnはアロー関数ではなくfunctionで定義する
それ以外なら false。
配列要素数が0のとき、falseを返す。
※true とみなされる値については、次ページを参考にしてください。
●【JavaScript】条件判定等で false とみなされる値
■callbackfnの構文
callbackfn ( value , index , array ){ return booleanValue; }
- value: 要素の値
- index: 要素のインデックス
- array: 対象となっている配列
■使用例
// 配列内に文字列が含まれているかどうかを判定
const isInString = array =>array.some( e=>typeof e === "string" );
console.log( isInString([1,2,3]) ); // false
console.log( isInString([1,"a",3]) ); // true
■備考
call()等でアレイライクオブジェクトを対象にすることも可能です。
const isInString = array =>Array.prototype.some.call(
array, e=>typeof e === "string"
);
console.log( isInString({0:1,1:2,2:3,length:3}) ); // false
console.log( isInString({0:1,2:"a",3:5,length:3}) ); // true
更新日:2024/06/14
スポンサーリンク
記事の内容について
こんにちはけーちゃんです。
説明するのって難しいですね。
「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。
裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。
掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。
ご意見、ご指摘はこちら。
https://jsref.affi-sapo-sv.com/info.php
このサイトは、リンクフリーです。大歓迎です。