find【値検索 (ユーザ関数)】メソッド
findIndex【インデックス検索 (ユーザ関数)】メソッド
indexOf【検索 (順方向)】メソッド
lastIndexOf【検索 (逆方向)】メソッド
%TypedArray%.prototype.find【値検索 (ユーザ関数)】メソッド
メモ
- 指定したユーザ関数 (コールバック関数)で順に検索処理を実行し、最初に検索された要素の値を返却
- Array【配列】オブジェクト のfind【値検索 (ユーザ関数)】に類似
- 抽出生成 (複数要素の検索):filter【抽出生成】
- その他検索
構文
find(predicate [ , thisArg ] )
- predicate:ユーザ関数 (コールバック関数)
引数名 (例) 説明 value 要素値 index 要素インデックス typedArray %TypedArray%【型指定配列ビュー】オブジェクト 戻り値型 説明 Boolean true:検索対象要素
false:検索対象要素以外 - thisArg:ユーザ関数 (コールバック関数)内でthis で参照されるオブジェクト
- 要素の値
- undefined:検索要素なし
- TypeError 例外:predicate が呼び出し可能な関数オブジェクト以外
例
/**
* 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【抽出生成】
- その他検索
構文
findIndex( predicate [ , thisArg ] )
- predicate:ユーザ関数 (コールバック関数)
引数名 (例) 説明 value 要素値 index 要素インデックス typedArray %TypedArray%【型指定配列ビュー】オブジェクト 戻り値型 説明 Boolean true:検索対象要素
false:検索対象要素以外 - thisArg:ユーザ関数 (コールバック関数)内でthis で参照されるオブジェクト
- 要素のインデックス
- -1:検索要素なし
- TypeError 例外:predicate が呼び出し可能な関数オブジェクト以外
例
/**
* 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【検索 (順方向)】に類似
- その他検索
構文
indexOf( searchElement [ , fromIndex ] )
- searchElement:検索要素
- fromIndex:検索開始インデックス
- 省略:0
- 配列の要素数 ≦:検索失敗 (-1 返却)
- < 0:最終要素からのオフセット (-1:最終要素 / 先頭位置より前の場合、先頭インデックス)
- 一致要素インデックス
- -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【検索 (逆方向)】に類似
- その他検索
構文
lastIndexOf( searchElement [ , fromIndex ] )
- searchElement:検索要素
- fromIndex:検索開始インデックス
- 省略:0
- 配列の要素数 ≦:検索失敗 (-1 返却)
- < 0:最終要素からのオフセット (-1:最終要素 / 先頭位置より前の場合、先頭インデックス)
- 一致要素インデックス
- -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
関連
- ECMAScript 2015 (6) (英語)
- ECMAScript 2016 (7) (英語)