JavaScriptのTypedArray.findIndex()関数とは?構文とサンプルコードで解説
JavaScriptのTypedArrayオブジェクトには、findIndex()という便利なメソッドが用意されています。このメソッドはコールバック関数を引数として受け取り、配列内の各要素に対してその関数によるテストを実行します。テストに合格した最初の要素のインデックスを返し、1つも合格しなかった場合は-1を返します。
構文
findIndex()メソッドの構文は以下の通りです。
typedArray.findIndex(function_name)
引数として渡すコールバック関数には、次の3つの引数が自動的に渡されます。
- element:現在処理中の要素の値
- index:現在処理中の要素のインデックス
- array:処理対象のTypedArrayオブジェクトそのもの
使用例1:条件に合致する要素が存在する場合
次の例では、「35より大きい」という条件のテスト関数を定義し、Int32Arrayの各要素に対してfindIndex()を実行しています。
<html>
<head>
<title>JavaScript TypedArray findIndex メソッド</title>
</head>
<body>
<script type="text/javascript">
var int32View = new Int32Array([21, 19, 65,21, 14, 66, 87, 55 ]);
document.write("Contents of the typed array: "+int32View);
document.write("<br>");
function testResult(element, index, array) {
var ele = element>35
return ele;
}
result = int32View.findIndex(testResult);
document.write("Result: "+result);
</script>
</body>
</html>
実行結果
Contents of the typed array: 21,19,65,21,14,66,87,55 Result: 2
配列 [21, 19, 65, 21, 14, 66, 87, 55] の中で、最初に「35より大きい」という条件を満たすのはインデックス2の「65」です。そのため、結果として 2 が返されます。
使用例2:条件に合致する要素が存在しない場合
今度は条件を「100より大きい」に変更して実行してみます。
<html>
<head>
<title>JavaScript TypedArray findIndex メソッド</title>
</head>
<body>
<script type="text/javascript">
var int32View = new Int32Array([21, 19, 65,21, 14, 66, 87, 55 ]);
document.write("Contents of the typed array: "+int32View);
document.write("<br>");
function testResult(element, index, array) {
var ele = element>100
return ele;
}
result = int32View.findIndex(testResult);
document.write("Result: "+result);
</script>
</body>
</html>
実行結果
Contents of the typed array: 21,19,65,21,14,66,87,55 Result: -1
配列内に100より大きい要素は1つも存在しないため、-1 が返されます。このように、findIndex()は条件に合致する要素が存在するかどうかの判定にも活用できます。
まとめ
- findIndex()は、テスト関数に合格した最初の要素のインデックスを返す
- どの要素も合格しなければ-1を返す
- コールバック関数には element・index・array の3つの引数が渡される
-
JavaScriptのArray.of()関数とは?構文と使い方を実例付きで解説
JavaScript の Array.of() メソッドは、引数として渡された値を要素とする新しい配列インスタンスを作成するためのメソッドです。この記事では、Array.of() の基本構文と、実際に動作するサンプルコードを使った使い方をわかりやすく解説します。 Array.of() メソッドの特徴 Array.of() は、0 個以上の任意の値を引数として受け取り、それらをそのまま要素に含んだ配列を返します。Array() コンストラクタとの大きな違いは、数値を 1 つだけ渡した場合の挙動です。 Array(5) → 長さ 5 の空の配列を作成する Array.of(5) → 要素として
-
JavaScriptの配列findIndex()関数の使い方をわかりやすく解説
JavaScriptのfindIndex()関数は、配列の中から指定した条件を満たす最初の要素を見つけ、そのインデックス番号を返すメソッドです。条件に合う要素が見つかった場合、その要素のインデックスが返されます。もし条件を満たす要素がひとつも存在しない場合は、-1が返されるという特徴があります。findIndex()の基本的な使い方以下は、findIndex()関数を使ったサンプルコードです。ボタンをクリックすると、配列内の「lion」という要素のインデックスを取得して表示します。サンプルコード<!DOCTYPE html> <html lang="ja"