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」を指定とみなす |