カテゴリー
JavaScript

様々なオブジェクト(Stringオブジェクト)について知ろう2

この章ではStringオブジェクトについて説明します。これも組み込みオブジェクトなので、簡単に文字列に関しての機能を使うことが出来ます。1 初めにオブジェクトを作成してから、様々なメソッドなどを実行します。1 lengthは文字列の長さを取得します。
では例をみてみましょう。1 全角文字、半角文字ともに1と、数えます。
結果は「8」です。1 charAtは文字列の一部を取り出します。
ここでの注意は「取り出す文字の位置」は0から数えてください。1 1から数えるのではないので注意してください。
a.charAt(30)のように指定した数が文字数を超えているような場合はカラが返されます(何も表示されない)
では例をみてみましょう。1 指定位置の数え方は以下のようになります。
0番目=>a
1番目=>b
2番目=>c
結果は「b」です。1 substringメソッドは指定した範囲の文字列を取り出します。
引数で「取り出す文字列の範囲」を指定して、その個所を取り出します。
例えばa.substring(0,3)は0番目の文字から3番目の文字の一つ前までを取り出すと言う意味です。終了位置の一つ前までなので気を付けてください。
では例をみてみましょう。11 substring(0,2)
=>0番目から2番目の手前までなので、答えはabです。
substring(2,0)
=>開始位置のほうが終了位置より大きい場合は後ろから前へ数えます。つまり2番目のひとつ前(つまりb)から、先頭まで取り出しますので、答えはabです。
substring(4,7)
=> 4番目から7番目の手前までなので、答えはefgです。

substring(4)
=>終了位置を省略した場合はその位置から末尾まですべて取り出すので、結果はefghiです。1 sliceメソッドは指定した範囲の文字列を取り出します。
引数で「取り出す文字列の範囲」を指定して、その範囲を取り出します。
例えばa.slice (0,3)は0番目の文字から3番目の文字の一つ手前までを取り出すと言う意味です。
では例をみてみましょう。1 1slice (0,3)
=>0番目から3番目の手前まで。
答えはabc です。

slice (4,7)
=> 4番目から7番目の手前まで。
答えはdef です。

slice (2,0)
=>開始位置の番号のほうが終了位置の番号より大きい場合は何も返されません。

slice(4)
=>終了位置を省略した場合はその位置から末尾まですべて取り出します。
結果はdef ghiです。

slice(-11,-8)
=>sliceでは開始位置、終了位置ともにマイナスの指定も出来ます。マイナス指定の場合は末尾から1と、数えます。
結果はabcです。

slice(-11,7)
=>このように開始位置がマイナス指定で、終了位置がプラス指定と言う組み合わせも可能です。
結果はabc defです。

slice(4,-2)
=>このように開始位置がプラス指定で、終了位置がマイナス指定と言う組み合わせも可能です。 結果はdef gです。1 => concatメソッドは文字列と文字列を結合する機能を持っています。
文字列1,文字列2….を結びつけます。
文字列は「,」で区切れば何個でも書けます。
以下のようにconcatと同じ結果が「+」を使用しても実現できます。
では例をみてみましょう。111 substrメソッドは指定した範囲の文字列を取り出します。
では例をみてみましょう。11 substr (0,3)
=>0番目から3つ切り取ります。
結果はabc です。

substr (4,7)
=> 4番目から7つ切り取ります。
結果はdef ghiです。

substr (2,0)
=> 2番目から0個なので何も返されません。

substr (4)
=>個数を省略した場合はその位置から末尾まですべて取り出します。
結果はdef ghiです。

substr (-11,-8)
=>個数のマイナスの指定はできません。ですので、何も表示されません。

substr (-11,7)
=>このように開始位置がマイナス指定で、個数がプラス指定と言う組み合わせも可能です。
結果はabc defです。1 indexOfは指定した文字列を先頭から右側に向かって検索します。
検索した結果、その文字がなかった場合は-1が返りますし、文字が見つかった場合はその文字の先頭位置を返します。
検索開始位置を省略した場合は0が指定されたとみなされます。
では例をみてみましょう。1 結果は「8」と「9」です。1 検索開始位置の2(cの部分)はここから右方向に検索が始まるというだけで、返される番号は先頭から数えた数になるので注意してください。
つまり,cの部分から数えた数が返されるのではありません。1 lastIndexOfは指定した文字列を後ろから先頭に向かって検索します。
検索した結果、その文字がなかった場合は-1が返りますし、文字が見つかった場合はその文字の先頭位置を返します。
検索開始位置を省略した場合は末尾が指定されたとみなされます。
以下の例はlastIndexとindexOfを較べています。1 11=>末尾から検索しているので、gchiのcが該当します
1=>先頭から数えているので、abcのcが該当します
1=>前から数えて6番目の文字(この例ではdです)から先頭に向かって検索します。hiは4番目にあるので4が返されます(ヒットした位置は先頭から数えます)。
1=>前から数えて6番目の文字(この例ではdです)から末尾に向かって検索します。hiは12番目にあるので12が返されます。
1toLowerCaseメソッドは文字列を小文字に変換します。
toUpperCaseメソッドは文字列を大文字に変換します。
では例をみてみましょう。1 結果は
「abcdefg」

「ABCDEFG」
です。1 charCodeAtメソッドは引数で指定した箇所にある文字のUnicode の値を返します。
Unicodeは「世界中の文字を共通した方法で符号化」して、コンピュータ上で扱えるように作られた文字コードです。
では例をみてみましょう。1 Cの文字コードは67なので
結果は「67」です。
charCodeAt で返されるUnicodeの値は65.536より小さい値を返します。