JavaScriptのTypedArray.indexOf()関数とは?使い方とサンプルコードを解説
JavaScriptのindexOf()関数は、型付き配列(TypedArray)オブジェクトが持つメソッドの一つで、引数に渡した値が配列内に存在するかどうかを確認します。要素が見つかった場合は、その要素が配置されているインデックス(位置)を返します。同じ要素が複数回出現する場合は、最初に出現した位置のインデックスを返します。指定した要素が配列内に存在しない場合は、-1を返します。
構文
typedArray.indexOf(searchElement[, fromIndex])
パラメータ
- searchElement: 配列内から検索したい要素(値)を指定します。
- fromIndex(省略可能): 検索を開始するインデックスを指定します。省略した場合は先頭(0)から検索されます。負の値を指定すると、配列の末尾からのオフセットとして扱われます。
戻り値
要素が見つかった場合はそのインデックス番号を、見つからなかった場合は-1を返します。
使用例1:要素が見つかる場合
<html>
<head>
<title>JavaScript TypedArray indexOf メソッド</title>
</head>
<body>
<script type="text/javascript">
var int32View = new Int32Array([21, 19, 65, 21, 14, 66, 87, 55, 66, 97, 66]);
document.write("型付き配列の内容: " + int32View);
document.write("<br>");
var contains = int32View.indexOf(66);
document.write("指定した要素のインデックス: " + contains);
</script>
</body>
</html>実行結果
型付き配列の内容: 21,19,65,21,14,66,87,55,66,97,66 指定した要素のインデックス: 5
この例では、値66は配列内に3回出現します(インデックス5、8、10)が、indexOf()は最初に出現したインデックス5を返します。
使用例2:要素が見つからない場合
<html>
<head>
<title>JavaScript TypedArray indexOf メソッド</title>
</head>
<body>
<script type="text/javascript">
var int32View = new Int32Array([21, 19, 65, 21, 14, 66, 87, 55, 66, 97, 66]);
document.write("型付き配列の内容: " + int32View);
document.write("<br>");
var contains = int32View.indexOf(634);
document.write("指定した要素のインデックス: " + contains);
</script>
</body>
</html>実行結果
型付き配列の内容: 21,19,65,21,14,66,87,55,66,97,66 指定した要素のインデックス: -1
この例では、値634は配列内に存在しないため、-1が返されます。
押さえておきたいポイント
- indexOf()は厳密な等価演算子(===)と同じ基準で要素を比較します。
- NaNを検索する場合、NaN === NaN が false と評価されるため、indexOf()は常に-1を返します。NaNの存在確認にはincludes()メソッドを使用してください。
- 単純な存在確認だけでなく、検索開始位置を指定できるため、部分的な範囲での検索にも活用できます。
-
JavaScriptのarray.includes()メソッドとは?配列に特定の要素が含まれているか判定する方法
JavaScriptのarray.includes()メソッドは、配列の中に指定した要素が含まれているかどうかを判定するために使用します。戻り値はブール値(true / false)で、要素が見つかればtrue、見つからなければfalseを返します。 構文 array.includes(ele, start) 各パラメータの意味は以下のとおりです。 ele:検索したい要素(必須) start:検索を開始する位置(省略可能)。デフォルトは0で、配列の先頭から検索が始まります それでは、JavaScriptでarray.includes()メソッドを実際に実装してみましょう。 例1:数値の配列
-
JavaScriptのarray.toLocaleString()関数の使い方|配列をロケール形式の文字列に変換する方法
array.toLocaleString()関数とはJavaScriptのarray.toLocaleString()関数は、配列の要素を文字列として返し、各要素をカンマなどロケール固有の区切り文字で連結します。引数としてロケール(言語タグ)を指定することもでき、指定した言語・地域の書式に従って文字列へ変換されます。例えば、日付オブジェクトが含まれる配列に対してこの関数を使用すると、「en-GB」や「ja-JP」などのロケールに応じた形式で日付が表示されます。ロケールを省略した場合は、実行環境のデフォルトのロケールが使用されます。主な特徴配列のすべての要素を文字列化し、区切り文字で連結して返す