概要

String プロトタイプオブジェクトを表します。

説明

String インスタンスの全ては、String.prototype を継承します。String プロトタイプオブジェクトへの変更は、String インスタンスの全てに伝播します。

プロパティ

constructor
オブジェクトのプロトタイプを生成する関数を指定します。
length
文字列の長さを返します。
N
N 番目の文字にアクセスするために用いられます。N は、0 から length - 1 までの正の整数です。このプロパティは読み込み専用です。

メソッド

HTML に関連しないメソッド

charAt
指定された添え字の文字を返します。
charCodeAt
与えられた添え字の文字の Unicode の値を示す数を返します。
concat
2 つの文字列を連結し、新しい文字列を返します。
contains
文字列中に指定された文字列が含まれているかを返します。
endsWith
文字列の終端に指定された文字列が含まれているかを返します。
indexOf
呼び出す String オブジェクト 中で、指定された値が最初に現れる添え字を返します。指定された値が見つからない場合は、-1 を返します。
lastIndexOf
呼び出す String オブジェクト 中で、指定された値が最後に現れる添え字を返します。指定された値が見つからない場合は、-1 を返します。
localeCompare
参照文字列が、並べ替え順において、与えられた文字列の前後にあるか、あるいは、同じかどうかを示します。
match
文字列に対する正規表現のマッチのために使用されます。
quote
文字列をダブルクォート (""")で囲みます。
replace
正規表現と文字列の間のマッチを見つけ、マッチした部分文字列を新しい部分文字列に置き換えるために使用されます。
search
正規表現と指定された文字列の間のマッチのための検索を実行します。
slice
文字列の一部分を取り出し、新しい文字列を返します。
split
文字列を複数の部分文字列に区切ることによって、String オブジェクトを文字列の配列に分割します。
startsWith
文字列が指定された文字列で開始されているかを返します。
substr
文字列において、指定された位置から指定された文字数の文字を返します。
substring
文字列において、文字列内の 2 つの添え字の間にある文字を返します。
toLocaleLowerCase
文字列内の文字を現在のロケールでの小文字に変換します。ほとんどの言語で、このメソッドは、toLowerCase と同じ結果を返します。
toLocaleUpperCase
文字列内の文字を現在のロケールでの大文字に変換します。ほとんどの言語で、このメソッドは、toUpperCase と同じ結果を返します。
toLowerCase
小文字に変換された文字列の値を呼び出して返します。
toSource
指定されたオブジェクトを表すオブジェクトリテラルを返します。この値を新しいオブジェクトを生成するために使用することができます。Object.toSource メソッドを上書きします。
toString
指定されたオブジェクトの文字列を返します。Object.toString メソッドを上書きします。
toUpperCase
大文字に変換された文字列の値を呼び出して返します。
trim
文字列の最初と最後にある空白を削除します。ECMAScript 5 標準の一部です。
trimLeft
文字列の左側にある空白を削除します。
trimRight
文字列の右側にある空白を削除します。
valueOf
指定されたオブジェクトのプリミティブ値を返します。Object.valueOf メソッドを上書きします。

HTML ラッパーメソッド

以下のメソッドは、それぞれ、特定の HTML タグでラップされた文字列のコピーを返します。

anchor
<a name="name"> (ハイパーテキストターゲット)
big
<big>
blink
<blink>
bold
<b>
fixed
<tt>
fontcolor
<font color="color">
fontsize
<font size="size">
italics
<i>
link
<a href="url"> (URL へのリンク)
small
<small>
strike
<strike>
sub
<sub>
sup
<sup>

これらのメソッドは、使用に制限があるメソッドで、利用可能なHTML タグと属性のサブセットのみを提供します。

例:repeat メソッドを持つように文字列のインスタンスを拡張する

以下の例は、 str_rep というメソッドを生成し、String.prototype.repeat = str_rep という文を用いて、String オブジェクトの全てにそのメソッドを追加しています。String インスタンスの全てが、既に生成されていたとしても、そのメソッドを持つようになります。例では次に、その代わりとなるメソッドを生成し、s1.repeat = fake_rep という文を用いて、String オブジェクトのひとつで以前のメソッドを上書きしています。String オブジェクトに残っている str_rep メソッドは、置き換えられていません。

var s1 = new String("a");
var s2 = new String("b");
var s3 = new String("c");

// String オブジェクトの全てに対して「文字列を N 回繰り返す」メソッドを
// 生成します
function str_rep(n) {
   var s = "", t = this.toString();
   while (--n >= 0) {
     s += t
   }
   return s;
}

String.prototype.repeat = str_rep;

s1a=s1.repeat(3); // "aaa" を返します。
s2a=s2.repeat(5); // "bbbbb" を返します。
s3a=s3.repeat(2); // "cc" を返します。

// String 変数の 1 つだけに代入する代替メソッドを生成します。
function fake_rep(n) {
   return "repeat " + this + " " + n + " times.";
}

s1.rep = fake_rep
s1b=s1.repeat(1); // "repeat a 1 times." を返します。
s2b=s2.repeat(4); // "bbbb" を返します。
s3b=s3.repeat(6); // "cccccc" を返します。

この例での関数は、String コンストラクタで生成されていない String オブジェクトでも動作します。次のコードは、"zzz" を返します。

"z".repeat(3);

ドキュメントのタグと貢献者

タグ: 
 このページの貢献者: mamodayo, teoli, ethertank, suzukaze, tokkyo, Potappo, fscholz, Yuki Konno, Mgjbot
 最終更新者: mamodayo,