find【値検索 (ユーザ関数)】
findIndex【インデックス検索 (ユーザ関数)】
indexOf【検索 (順方向)】
lastIndexOf【検索 (逆方向)】
%TypedArray%.prototype.find【値検索 (ユーザ関数)】
メモ
- 指定したユーザ関数 (コールバック関数)で順に検索処理を実行し、最初に検索された要素の値を返却
- Array【配列】オブジェクト のfind【値検索 (ユーザ関数)】に類似
- 抽出生成 (複数要素の検索):filter【抽出生成】
- その他検索
- 外部リンク (英語)
%TypedArray%.prototype.find ( predicate [ , thisArg ] ) ES2022 (13) ES2021 (12) ES2020 (11)
構文
find(predicate [ , thisArg ] )
要素の値 (undefined:検索要素なし)
predicate ユーザ関数 (コールバック関数:詳細は下記参照)
thisArg ユーザ関数 (コールバック関数)内でthis で参照されるオブジェクト
TypeError 例外 predicate が呼び出し可能な関数オブジェクト以外
predicate (ユーザ関数)
引数名 (例) | 説明 |
---|---|
value | 要素値 |
index | 要素インデックス |
typedArray | %TypedArray%【型指定配列ビュー】オブジェクト |
戻り値型 | 説明 |
Boolean | true:検索対象要素 false:検索対象要素以外 |
例
/**
* find 用ユーザ関数 (コールバック関数) (判定値 this 以上を検索)
* @param {number} value 要素値
* @param {number} index 要素インデックス
* @param {Int32Array} typedArray %TypedArray%【型指定配列ビュー】オブジェクト
* @return {boolean} true:検索対象要素 / false:検索対象要素以外
*/
function findFunc(value, index, typedArray) {
return (this <= value);
}
var array = [ 1, -2, 3, -4, 5 ];
var typedArray = new Int32Array(array);
console.log(typedArray.find(findFunc, 0)); // 0 以上を検索
// 出力: 1
console.log(typedArray.find(findFunc, 3)); // 3 以上を検索
// 出力: 3
%TypedArray%.prototype.findIndex【インデックス検索 (ユーザ関数)】
メモ
- 指定したユーザ関数 (コールバック関数)で順に検索処理を実行し、最初に検索された要素のインデックスを返却
- Array【配列】オブジェクト のfindIndex【インデックス検索 (ユーザ関数)】に類似
- 抽出生成 (複数要素の検索):filter【抽出生成】
- その他検索
- 外部リンク (英語)
%TypedArray%.prototype.findIndex ( predicate [ , thisArg ] ) ES2022 (13) ES2021 (12) ES2020 (11)
構文
findIndex( predicate [ , thisArg ] )
要素のインデックス (-1:検索要素なし)
predicate ユーザ関数 (コールバック関数:詳細は下記参照)
thisArg ユーザ関数 (コールバック関数)内でthis で参照されるオブジェクト
TypeError 例外 predicate が呼び出し可能な関数オブジェクト以外
predicate (ユーザ関数)
引数名 (例) | 説明 |
---|---|
value | 要素値 |
index | 要素インデックス |
typedArray | %TypedArray%【型指定配列ビュー】オブジェクト |
戻り値型 | 説明 |
Boolean | true:検索対象要素 false:検索対象要素以外 |
例
/**
* find 用ユーザ関数 (コールバック関数) (判定値 this 以上を検索)
* @param {number} value 要素値
* @param {number} index 要素インデックス
* @param {Int32Array} typedArray %TypedArray%【型指定配列ビュー】オブジェクト
* @return {boolean} true:検索対象要素 / false:検索対象要素以外
*/
function findFunc(value, index, typedArray) {
return (this <= value);
}
var array = [ 1, -2, 3, -4, 5 ];
var typedArray = new Int32Array(array);
console.log(typedArray.findIndex(findFunc, 0)); // 0 以上を検索
// 出力:0
console.log(typedArray.findIndex(findFunc, 3)); // 3 以上を検索
// 出力:2
%TypedArray%.prototype.indexOf【検索 (順方向)】
メモ
- 要素を順方向に検索 (未指定の要素は比較対象外)
- === 【同値 演算子】で比較
- Array【配列】オブジェクト のindexOf【検索 (順方向)】に類似
- その他検索
- 外部リンク (英語)
%TypedArray%.prototype.indexOf ( searchElement [ , fromIndex ] ) ES2022 (13) ES2021 (12) ES2020 (11)
構文
indexOf( searchElement [ , fromIndex ] )
一致要素インデックス (-1:一致なし)
searchElement 検索要素
fromIndex 検索開始インデックス
省略:0
配列の要素数 ≦:検索失敗 (-1 返却)
< 0:最終要素からのオフセット (-1:最終要素 / 先頭位置より前の場合、先頭インデックス)
例
var array = [ 1, 2, 3, 3, 3, 4, 5 ];
var typedArray = new Int32Array(array);
console.log(typedArray.indexOf(3));
// 出力:2
console.log(typedArray.indexOf(-3));
// 出力:-1
console.log(typedArray.indexOf(3, 1));
// 出力:2
console.log(typedArray.indexOf(3, 2));
// 出力:2
console.log(typedArray.indexOf(3, 3));
// 出力:3
console.log(typedArray.indexOf(3, 4));
// 出力:4
console.log(typedArray.indexOf(3, 5));
// 出力:-1
console.log(typedArray.indexOf(3, 6));
// 出力:-1
console.log(typedArray.indexOf(3, -1));
// 出力:-1
console.log(typedArray.indexOf(3, -2));
// 出力:-1
console.log(typedArray.indexOf(3, -3));
// 出力:4
console.log(typedArray.indexOf(3, -4));
// 出力:3
console.log(typedArray.indexOf(3, -5));
// 出力:2
console.log(typedArray.indexOf(3, -6));
// 出力:2
console.log(typedArray.indexOf(3, -7));
// 出力:2
%TypedArray%.prototype.lastIndexOf【検索 (逆方向)】
メモ
- 要素を逆方向に検索 (未指定の要素は比較対象外)
- === 【同値 演算子】で比較
- Array【配列】オブジェクト のlastIndexOf【検索 (逆方向)】に類似
- その他検索
- 外部リンク (英語)
%TypedArray%.prototype.lastIndexOf ( searchElement [ , fromIndex ] ) ES2022 (13) ES2021 (12) ES2020 (11)
構文
lastIndexOf( searchElement [ , fromIndex ] )
一致要素インデックス (-1:一致なし)
searchElement 検索要素
fromIndex 検索開始インデックス
省略:0
配列の要素数 ≦:検索失敗 (-1 返却)
< 0:最終要素からのオフセット (-1:最終要素 / 先頭位置より前の場合、先頭インデックス)
例
var array = [ 1, 2, 3, 3, 3, 4, 5 ];
var typedArray = new Int32Array(array);
console.log(typedArray.lastIndexOf(3));
// 出力:4
console.log(typedArray.lastIndexOf(-3));
// 出力:-1
console.log(typedArray.lastIndexOf(3, 1));
// 出力:-1
console.log(typedArray.lastIndexOf(3, 2));
// 出力:2
console.log(typedArray.lastIndexOf(3, 3));
// 出力:3
console.log(typedArray.lastIndexOf(3, 4));
// 出力:4
console.log(typedArray.lastIndexOf(3, 5));
// 出力:4
console.log(typedArray.lastIndexOf(3, 6));
// 出力:4
console.log(typedArray.lastIndexOf(3, -1));
// 出力:4
console.log(typedArray.lastIndexOf(3, -2));
// 出力:4
console.log(typedArray.lastIndexOf(3, -3));
// 出力:4
console.log(typedArray.lastIndexOf(3, -4));
// 出力:3
console.log(typedArray.lastIndexOf(3, -5));
// 出力:2
console.log(typedArray.lastIndexOf(3, -6));
// 出力:-1
console.log(typedArray.lastIndexOf(3, -7));
// 出力:-1