String.prototype

  • リビジョンの URL スラッグ: JavaScript/Reference/Global_Objects/String/prototype
  • リビジョンのタイトル: prototype
  • リビジョンの ID: 106938
  • 作成日:
  • 作成者: Potappo
  • 現行リビジョン いいえ
  • コメント 3 words added, 3 words removed

このリビジョンの内容

{{ 英語版章題("Summary") }}

概要

String プロトタイプオブジェクトを表します。 <table class="fullwidth-table"> <tr> <td class="header" colspan="2">{{ mediawiki.internal('Core JavaScript 1.5 Reference:Global Objects:String|String', "ja") }} のプロパティ</td> </tr> <tr> <td>実装されたバージョン</td> <td>JavaScript 1.1, NES3.0</td> </tr> <tr> <td>ECMA バージョン</td> <td>ECMA-262</td> </tr> </table>>

{{ 英語版章題("Description") }}

説明

String インスタンスの全ては、String.prototype を継承します。String プロトタイプオブジェクトへの変更は、String インスタンスの全てに伝播します。
{{ 英語版章題("Properties") }}

プロパティ

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

メソッド

{{ 英語版章題("Methods unrelated to HTML") }}

HTML に関連しないメソッド

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

{{ 英語版章題("HTML wrapper methods") }}

HTML ラッパーメソッド

{{ Non-standard_header() }}私たちは、W3C ではなく、自分たち自身のドキュメントにリンクを変更すべきでしょうか?どの場合においても、それらは今のままに保持してあります。なぜなら、MDC のHTML ページの現在の構造では、特定の属性を必要な方法で参照することができないからです(例えば、anchor メソッドと link メソッドの違い)。 以下のメソッドは、それぞれ、特定の HTML タグで{{ 原語併記("囲まれた", "wrapped") }} 文字列のコピーを返します。

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 タグと属性のサブセットのみを提供します。

{{ JSInherits("Object", "メソッド", "__defineGetter__", "__defineSetter__", "hasOwnProperty", "isPrototypeOf", "__lookupGetter__", "__lookupSetter__", "__noSuchMethod__", "propertyIsEnumerable", "unwatch", "watch") }}

{{ 英語版章題("Examples") }}

{{ 英語版章題("Example: Extending string instances with a repeat method") }}

例: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 変数の一つだけに代入する代替メソッドを生成します。
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);

 

{{ languages( { "en": "en/Core_JavaScript_1.5_Reference/Global_Objects/String/prototype", "es": "es/Referencia_de_JavaScript_1.5/Objetos_globales/String/prototype", "fr": "fr/R\u00e9f\u00e9rence_de_JavaScript_1.5_Core/Objets_globaux/String/prototype", "pl": "pl/Dokumentacja_j\u0119zyka_JavaScript_1.5/Obiekty/String/prototype" } ) }}

このリビジョンのソースコード

<p>{{ 英語版章題("Summary") }}</p>
<h3 name=".E6.A6.82.E8.A6.81">概要</h3>
<p><a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String">String</a> プロトタイプオブジェクトを表します。 <span class="comment">&lt;table class="fullwidth-table"&gt; &lt;tr&gt; &lt;td class="header" colspan="2"&gt;{{ mediawiki.internal('Core JavaScript 1.5 Reference:Global Objects:String|String', "ja") }} のプロパティ&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;実装されたバージョン&lt;/td&gt; &lt;td&gt;JavaScript 1.1, NES3.0&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;ECMA バージョン&lt;/td&gt; &lt;td&gt;ECMA-262&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt;&gt;</span></p>
<p>{{ 英語版章題("Description") }}</p>
<h3 name=".E8.AA.AC.E6.98.8E">説明</h3>
<div class="onlyinclude"><code>String</code> インスタンスの全ては、<code>String.prototype</code> を継承します。<code>String</code> プロトタイプオブジェクトへの変更は、<code>String</code> インスタンスの全てに伝播します。
<div class="noinclude">{{ 英語版章題("Properties") }}</div>
<h3>プロパティ</h3>
<dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/constructor" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/constructor">constructor</a></dt><dd> オブジェクトのプロトタイプを生成する関数を指定します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/length" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/length">length</a></dt><dd> 文字列の長さを返します。 </dd></dl> <dl><dt> <em>N</em> </dt><dd> {{ Non-standard_inline() }} </dd><dd> <em>N</em> 番目の文字にアクセスするために用いられます。<em>N</em> は、0 から <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/length" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/length">length</a> - 1 までの正の整数です。このプロパティは読み込み専用です。 </dd></dl>
<div class="noinclude">{{ 英語版章題("Methods") }}</div>
<h3>メソッド</h3>
<p>{{ 英語版章題("Methods unrelated to HTML") }}</p>
<h4>HTML に関連しないメソッド</h4>
<dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/charAt" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/charAt">charAt</a> </dt><dd> 指定された添え字の文字を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/charCodeAt" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/charCodeAt">charCodeAt</a> </dt><dd> 与えられた添え字の文字の Unicode の値を示す数を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/concat" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/concat">concat</a> </dt><dd> 2 つの文字列のテキストをつなげて、新しい文字列を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/indexOf" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/indexOf">indexOf</a> </dt><dd> 呼び出す <code>String</code> オブジェクト 中で、指定された値が最初に現れる添え字を返します。指定された値が見つからない場合は、-1 を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/lastIndexOf" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/lastIndexOf">lastIndexOf</a> </dt><dd> 呼び出す <code>String</code> オブジェクト 中で、指定された値が最後に現れる添え字を返します。指定された値が見つからない場合は、-1 を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/localeCompare" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/localeCompare">localeCompare</a> </dt><dd> 参照文字列が、並べ替え順において、与えられた文字列の前後にあるか、あるいは、同じかどうかを示します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/match" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/match">match</a> </dt><dd> 文字列に対する正規表現のマッチのために使用されます。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/quote" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/quote">quote</a> </dt><dd> {{ Non-standard_inline() }} </dd><dd> 文字列をダブルクォート ("<code>"</code>")で囲みます。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/replace" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/replace">replace</a> </dt><dd> 正規表現と文字列の間のマッチを見つけ、マッチした部分文字列を新しい部分文字列に置き換えるために使用されます。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/search" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/search">search</a> </dt><dd> 正規表現と指定された文字列の間のマッチのための検索を実行します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/slice" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/slice">slice</a> </dt><dd> 文字列の一部分を取り出し、新しい文字列を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/split" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/split">split</a> </dt><dd> 文字列を複数の部分文字列に区切ることによって、String オブジェクトを文字列の配列に分割します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/substr" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/substr">substr</a> </dt><dd> 文字列において、指定された位置から指定された文字数の文字を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/substring" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/substring">substring</a> </dt><dd> 文字列において、文字列内の 2 つの添え字の間にある文字を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLocaleLowerCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLocaleLowerCase">toLocaleLowerCase</a> </dt><dd> 文字列内の文字を現在のロケールでの小文字に変換します。ほとんどの言語で、このメソッドは、<a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLowerCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLowerCase">toLowerCase</a> と同じ結果を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLocaleUpperCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLocaleUpperCase">toLocaleUpperCase</a> </dt><dd> 文字列内の文字を現在のロケールでの大文字に変換します。ほとんどの言語で、このメソッドは、<a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toUpperCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toUpperCase">toUpperCase</a> と同じ結果を返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLowerCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toLowerCase">toLowerCase</a> </dt><dd> 小文字に変換された文字列の値を呼び出して返します。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toSource" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toSource">toSource</a> </dt><dd> {{ Non-standard_inline() }} </dd><dd> 指定されたオブジェクトを表すオブジェクトリテラルを返します。この値を新しいオブジェクトを生成するために使用することができます。<a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/toSource" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/toSource">Object.toSource</a> メソッドを上書きします。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toString" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toString">toString</a> </dt><dd> 指定されたオブジェクトの文字列を返します。<a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/toString" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/toString">Object.toString</a> メソッドを上書きします。 </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toUpperCase" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/toUpperCase">toUpperCase</a> </dt><dd> 大文字に変換された文字列の値を呼び出して返します。 </dd> <dt><a class="internal" href="/Ja/Core_JavaScript_1.5_Reference/Global_Objects/String/Trim" title="Ja/Core JavaScript 1.5 Reference/Global Objects/String/Trim">trim</a> {{ fx_minversion_inline("3") }} {{ Non-standard_inline() }}</dt><dd>文字列の最初と最後にある空白を削除します。</dd> <dt><a class="internal" href="/Ja/Core_JavaScript_1.5_Reference/Global_Objects/String/TrimLeft" title="Ja/Core JavaScript 1.5 Reference/Global Objects/String/TrimLeft">trimLeft</a> {{ fx_minversion_inline("3") }} {{ Non-standard_inline() }}</dt> <dd>文字列の左側にある空白を削除します。</dd> <dt><a class="internal" href="/Ja/Core_JavaScript_1.5_Reference/Global_Objects/String/TrimRight" title="Ja/Core JavaScript 1.5 Reference/Global Objects/String/TrimRight">trimRight</a> {{ fx_minversion_inline("3") }} {{ Non-standard_inline() }} </dt> <dd>文字列の右側にある空白を削除します。</dd> <dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/valueOf" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/valueOf">valueOf</a> </dt><dd> 指定されたオブジェクトのプリミティブ値を返します。<a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/valueOf" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/Object/valueOf">Object.valueOf</a> メソッドを上書きします。 </dd></dl>
<p>{{ 英語版章題("HTML wrapper methods") }}</p><h4>HTML ラッパーメソッド</h4>
<p>{{ Non-standard_header() }}<span class="comment">私たちは、W3C ではなく、自分たち自身のドキュメントにリンクを変更すべきでしょうか?どの場合においても、それらは今のままに保持してあります。なぜなら、MDC のHTML ページの現在の構造では、特定の属性を必要な方法で参照することができないからです(例えば、anchor メソッドと link メソッドの違い)。</span> 以下のメソッドは、それぞれ、特定の HTML タグで{{ 原語併記("囲まれた", "wrapped") }} 文字列のコピーを返します。</p>
<dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/anchor" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/anchor">anchor</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/struct/links.html#adef-name-A"><code>&lt;a name="<em>name</em>"&gt;</code></a> (ハイパーテキストターゲット) </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/big" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/big">big</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-BIG"><code>&lt;big&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/blink" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/blink">blink</a> </dt><dd> <code>&lt;blink&gt;</code> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/bold" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/bold">bold</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-B"><code>&lt;b&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fixed" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fixed">fixed</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-TT"><code>&lt;tt&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fontcolor" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fontcolor">fontcolor</a> </dt><dd> <code>&lt;font color="<em>color</em>"&gt;</code> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fontsize" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/fontsize">fontsize</a> </dt><dd> <code>&lt;font size="<em>size</em>"&gt;</code> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/italics" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/italics">italics</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-I"><code>&lt;i&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/link" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/link">link</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/struct/links.html#adef-href"><code>&lt;a href="<em>url</em>"&gt;</code></a> (URL へのリンク) </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/small" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/small">small</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-SMALL"><code>&lt;small&gt;</code></a>. </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/strike" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/strike">strike</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/present/graphics.html#edef-STRIKE"><code>&lt;strike&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/sub" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/sub">sub</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/struct/text.html#edef-SUB"><code>&lt;sub&gt;</code></a> </dd></dl> <dl><dt> <a href="/ja/Core_JavaScript_1.5_Reference/Global_Objects/String/sup" title="ja/Core_JavaScript_1.5_Reference/Global_Objects/String/sup">sup</a> </dt><dd> <a class="external" href="http://www.w3.org/TR/html401/struct/text.html#edef-SUP"><code>&lt;sup&gt;</code></a> </dd></dl>
<p>これらのメソッドは、使用に制限があるメソッドで、利用可能なHTML タグと属性のサブセットのみを提供します。</p>
<p>{{ JSInherits("Object", "メソッド", "__defineGetter__", "__defineSetter__", "hasOwnProperty", "isPrototypeOf", "__lookupGetter__", "__lookupSetter__", "__noSuchMethod__", "propertyIsEnumerable", "unwatch", "watch") }}</p>
<p>{{ 英語版章題("Examples") }}</p>
<h3 name=".E4.BE.8B">例</h3>
<p>{{ 英語版章題("Example: Extending string instances with a <code>repeat</code> method") }}</p>
<h4 name=".E4.BE.8B.EF.BC.9Arepeat_.E3.83.A1.E3.82.BD.E3.83.83.E3.83.89.E3.82.92.E6.8C.81.E3.81.A4.E3.82.88.E3.81.86.E3.81.AB.E6.96.87.E5.AD.97.E5.88.97.E3.81.AE.E3.82.A4.E3.83.B3.E3.82.B9.E3.82.BF.E3.83.B3.E3.82.B9.E3.82.92.E6.8B.A1.E5.BC.B5.E3.81.99.E3.82.8B">例:<code>repeat</code> メソッドを持つように文字列のインスタンスを拡張する</h4>
<p>以下の例は、 <code>str_rep</code> というメソッドを生成し、<code>String.prototype.repeat = str_rep</code> という文を用いて、<code>String</code> オブジェクトの全てにそのメソッドを追加しています。<code>String</code> インスタンスの全てが、既に生成されていたとしても、そのメソッドを持つようになります。例では次に、その代わりとなるメソッドをを生成し、<code>s1.repeat = fake_rep</code> という文を用いて、<code>String</code> オブジェクトの一つで以前のメソッドを上書きしています。<code>String</code> オブジェクトに残っている <code>str_rep</code> メソッドは、置き換えられていません。</p>
<pre class="eval">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 &gt;= 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 変数の一つだけに代入する代替メソッドを生成します。
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" を返します。
</pre>
<p>この例での関数は、<code>String</code> コンストラクタで生成されていない <code>String</code> オブジェクトでも動作します。次のコードは、"zzz" を返します。</p>
<pre class="eval">"z".repeat(3);
</pre></div>
<p> </p>
<p>{{ languages( { "en": "en/Core_JavaScript_1.5_Reference/Global_Objects/String/prototype", "es": "es/Referencia_de_JavaScript_1.5/Objetos_globales/String/prototype", "fr": "fr/R\u00e9f\u00e9rence_de_JavaScript_1.5_Core/Objets_globaux/String/prototype", "pl": "pl/Dokumentacja_j\u0119zyka_JavaScript_1.5/Obiekty/String/prototype" } ) }}</p>
Revert to this revision