JavaScriptが生まれてかなり経ち、今では何らかのライブラリを使うことの方が多くなりました。
そんな中での文字列関数のうち、文字列内からの検索についての復習です。
黒歴史遺跡発掘のお供にどうぞ。(このエントリも鬼のように要補修で1年後には黒歴史というオチですが)
Mac OS X Google Chromeで確認。
引数、戻り値一覧
| 関数名 |
引数1 |
引数2 |
戻り値 |
| indexOf |
検索文字列 |
開始位置 |
最初の出現位置、該当なしで-1 |
| lastIndexOf |
検索文字列 |
開始位置 |
最後の出現位置、該当なしで-1 |
| match |
検索正規表現 |
|
該当要素の配列 |
| search |
検索正規表現 |
|
最初の該当出現位置 |
引数の数値変換と値による動作
indexOf
検索文字列
| 引数 |
動作 |
| 引数なし |
該当なしを返す |
| 数値(負の数) |
符号を含めた文字列とみなす |
| 数値(小数) |
文字列とみなす |
| 数値(正の符号つき) |
符号を含めない文字列とみなす |
| 数値(8進数表記) |
10進数で表記した文字列とみなす |
| 数値(16進数表記) |
10進数で表記した文字列とみなす |
| 空文字列 |
0を返す |
| 配列(空配列) |
0を返す |
| 配列(要素数1以上) |
join()実行結果(カンマ区切り文字列)とみなす |
| オブジェクト |
文字列「[object Object]」を指定とみなす |
| 関数 |
文字列に変換したものを指定とみなす |
開始位置
| 引数 |
動作 |
| 文字列(数字以外) |
0を指定とみなす |
| 文字列(数字) |
整数値に変換した値を指定とみなす |
| 数値(文字列長以上) |
該当なしを返す |
| 数値(小数) |
整数値に変換した値を指定とみなす |
| 数値(負の値) |
該当なしを返す |
| 配列(空配列) |
0を指定とみなす |
| 配列(要素数1) |
先頭要素を文字列に変換した値とみなす |
| 配列(要素数2以上) |
0を指定とみなす |
| オブジェクト |
0を指定とみなす |
| null |
0を指定とみなす |
| NaN |
0を指定とみなす |
| function |
0を指定とみなす |
lastIndexOf
検索文字列
| 引数 |
動作 |
| 引数なし |
該当なしを返す |
| 数値(負の数) |
符号を含めた文字列とみなす |
| 数値(小数) |
文字列とみなす |
| 数値(正の符号つき) |
符号を含めない文字列とみなす |
| 数値(8進数表記) |
10進数で表記した文字列とみなす |
| 数値(16進数表記) |
10進数で表記した文字列とみなす |
| 空文字列 |
文字列長を返す |
| 配列(空配列) |
文字列長を返す |
| 配列(要素数1以上) |
join()実行結果(カンマ区切り文字列)とみなす |
| オブジェクト |
文字列「[object Object]」を指定とみなす |
| 関数 |
文字列に変換したものを指定とみなす |
開始位置
| 引数 |
動作 |
| 文字列(数字以外) |
正の無限大を指定とみなす |
| 文字列(数字) |
整数値に変換した値を指定とみなす |
| 数値(文字列長以上) |
正の無限大を指定とみなす |
| 数値(小数) |
整数値に変換した値を指定とみなす |
| 数値(負の値) |
該当なしを返す |
| 配列(空配列) |
0を指定とみなす |
| 配列(要素数1) |
先頭要素を文字列に変換した値とみなす |
| 配列(要素数2以上) |
正の無限大を指定とみなす |
| オブジェクト |
正の無限大を指定とみなす |
| null |
0を指定とみなす |
| NaN |
正の無限大を指定とみなす |
| function |
正の無限大を指定とみなす |
| ※ToNumberでNaNとなる値は正の無限大となる |
|
match
| 引数 |
動作 |
| 引数なし |
空文字列を指定とみなす |
| 文字列 |
正規表現に変換される |
| 空文字列 |
空文字列を要素とした長さ1の配列を返す |
| 数値(負の値) |
符号を含めた文字列とみなす |
| 数値(0、正の値) |
符号を含めない文字列とみなす |
| 配列(空配列) |
空文字列を指定とみなす |
| 配列(要素数1以上) |
join()実行結果(カンマ区切り文字列)とみなす |
| オブジェクト |
文字列「[object Object]」を指定とみなす |
| null |
文字列「null」を指定とみなす |
| NaN |
文字列「NaN」を指定とみなす |
search
| 引数 |
動作 |
| 引数なし |
空文字列を指定とみなす |
| 文字列 |
正規表現に変換される |
| 空文字列 |
0を返す |
| 数値(負の値) |
符号を含めた文字列とみなす |
| 数値(0、正の値) |
符号を含めない文字列とみなす |
| 配列(空配列) |
0を返す |
| 配列(要素数1以上) |
join()実行結果(カンマ区切り文字列)とみなす |
| オブジェクト |
文字列「[object Object]」を指定とみなす |
| null |
文字列「null」を指定とみなす |
| NaN |
文字列「NaN」を指定とみなす |