A | B | C | D | E | F | G | H | I | J | L | M | N | O | P | R | S | T | U | W |

Index: S

Screen Screen.availHeight Screen.availLeft
Screen.availTop Screen.availWidth Screen.colorDepth
Screen.height Screen.pixelDepth Screen.width
scroll() Select Select.length
Select.onchange Select.options[] Select.selectedIndex
Select.type self setTimeout()
status String String.anchor()
String.big() String.blink() String.bold()
String.charAt String.charCodeAt() String.concat()
String.fixed() String.fontcolor() String.fontsize()
String.fromCharCode() String.indexOf() String.italics()
String.lastIndexOf() String.length String.link()
String.match() String.replace() String.search()
String.slice() String.small() String.split()
String.strike() String.sub() String.substr()
String.substring() String.sup() String.toLowerCase()
String.toUpperCase() Style Style.borderWidths()
Style.margins() Style.paddings() Submit
Submit.onclick Submit.value sun



Screenオブジェクト ・・・ ディスプレイの解像度や色数などのスクリーン情報を格納する

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen

プロパティ

screen.availHeight画面の高さ(ピクセル数)。
screen.availLeft画面の左端の最初のピクセル値。
screen.availTop画面の上端の最初のピクセル値。
screen.availWidth画面の幅(ピクセル数)。
screen.colorDepth表示可能な色パレットの色数。
screen.height画面の高さ(ピクセル数)。
screen.pixelDepth画面の1ピクセルあたりのビット数。
screen.width画面の幅(ピクセル数)。

解説

すべてのウィンドウのscreenプロパティは、Screenオブジェクトを参照します。このグローバルオブジェクトの静的プロパティには、ブラウザを表示する画面に関する情報が含まれています。JavaScriptプログラムはこの情報を使ってユーザ側の表示能力に適合するように出力を最適化することができます。例えば、画面サイズに合うようにイメージのサイズをプログラムで選択することができます。また、画面の色数に合わせて16ビットカラーイメージと8ビットカラーイメージのどちらかを選択することもできます。さらに、画面サイズの情報を利用して、JavaScriptプログラムで新しいブラウザウィンドウを画面の中央に表示するようにもできます。

関連項目

Window.screen



Screen.availHeightプロパティ・・・画面の高さ

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen.availHeight

解説

screen.availHeightプロパティは、ブラウザが表示される画面の高さをピクセル数で表します。Windowsのようなオペレーティングシステムの場合、画面の下に表示されるタスクバーのようなWindowsの機能を表示するためのスペースは使用可能な高さには含まれません。 



Screen.availLeft・・・水平方向の最初のピクセル数

対応バージョン

クライアントサイドNavigator 4

コーディング形式

screen.availLeft

解説

screen.availLeftプロパティは、左端のX座標を表します。この値には、例えばWindowsのショートカットやWindowsのタスクバーなどの表示スペースは含まれません。



Screen.availTopプロパティ・・・垂直方向の最初のピクセル数

対応バージョン

クライアントサイドNavigator 4

コーディング形式

screen.availTop

解説

screen.availTopプロパティは、上端のY座標を表します。この値には、例えばWindowsのショートカットやタスクバーなどの表示スペースは含まれません。



Screen.availWidthプロパティ・・・画面の幅

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen.availWidth

解説

screen.availWidthプロパティは、ブラウザが表示される画面の幅をピクセル数で表します。Windowsなどのオペレーティングシステムの場合、ショートカットバーなどのWindows機能を表示する水平スペースはこの値には含まれません。 



Screen.colorDepthプロパティ・・・ブラウザの色パレットの深度

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen.colorDepth

解説

colorDepthプロパティは、ブラウザがサポートする色の数、つまりイメージを表示するために利用できる色数の2を底とする対数を表します。例えば、ブラウザが128色に対応している場合、screen.colorDepthプロパティは7になります。カラーパレットを持たないシステムでは、この値は画面の1ピクセルあたりのビット数と同じになります。
IE 4では、colorDepthプロパティは、カラーパレットの深度ではなく、1ピクセルあたりのビット数で画面の色の深度を表します。Navigatorでは、screen.pixelDepthプロパティがこの値を提供します。



Screen.heightプロパティ・・・スクリーンの高さ

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen.height

解説

screen.heightプロパティは、ブラウザを表示する画面の高さをピクセル数で表します。



Screen.pixelDepthプロパティ・・・画面の色の深度

対応バージョン

クライアントサイドNavigator 4

コーディング形式

screen.pixelDepth

解説

screen.pixelDepthプロパティは、ブラウザを表示する画面の色の深度を1ピクセルあたりのビット数で表します。



Screen.widthプロパティ・・・画面の幅

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

screen.width

解説

screen.widthプロパティは、ブラウザが表示される画面の幅をピクセル数で表します。



scroll()メソッド ・・・ Window.scroll()を参照



Select要素 ・・・ グラフィカルな選択リスト

対応バージョン

クライアントサイドJavaScript 1.0、JavaScript 1.1で機能拡張

継承元

Input, HTMLElement

コーディング形式

form.element_name
form
.elements[i]

プロパティ

Select要素は、InputとHTMLElementのプロパティを継承するとともに、以下のプロパティを定義または上書きしています。

lengthoptions[]配列の要素数を示す整数(読み出し専用)。つまりSelect要素に表示される要素の個数。
optionsOptionオブジェクトの配列。個々の配列はSelect要素内に表示するオプションに相当します。
selectedIndex読み出し専用の整数(Navigator 3、IE 4では読み書きが可能)。Select要素から選択されたオプションのインデックスのことです。Select要素にMULTIPLE属性が設定されており、複数の選択が可能な場合、このプロパティは選択された先頭の項目のインデックスです。何も選択されていない場合は、-1です。
Type読み出し専用の文字列。フォーム要素の型のことです。Select要素の型は"select-one"または"select-multiple"です。このプロパティはNavigator 3以降で有効です(IE 3以降で使用可)。

メソッド

Select要素は、InputとHTMLElementのメソッドを継承します。

イベントハンドラ

Select要素は、InputとHTMLElementのイベントハンドラを継承するとともに、以下のイベントハンドラを定義または上書きしています。

onchange	ユーザが項目を選択したり解除したときに呼び出されます。

HTML構文

Select要素は、標準HTMLの<SELECT>タグで生成します。JavaScript用にonChange属性が追加されています。Select要素内に表示するオプションは<OPTION>タグで生成します。

<FORM>
    ...
<SELECT
    NAME="name"   		要素の名前。nameプロパティになる。
    [ SIZE=integer ]   		要素に表示するオプションの個数。
    [ MULTIPLE ]   		複数選択を可能にする。
    [ onChange="handler" ]   	選択が変更されたときに呼び出される。
>
<OPTION VALUE="value1" [SELECTED]> option_label1
<OPTION VALUE="value2" [SELECTED]> option_label2

ここにオプションを記述する。

</SELECT>
   ...
</FORM>
 

解説

Select要素は、ユーザが選択可能な項目のリストです。要素のHTML定義でMULTIPLE属性が指定されている場合、ユーザはこのリストから必要なオプションをいくつでも選択できます。この属性が指定されていない場合は、1つのオプションだけしか選択できません。「ラジオボタン」と同じ振る舞いになります。どれか1つのオプションを選択すると、そのほかのボタンは解除されます。
Select要素のオプションを表示する方法は2つあります。第1はSIZE属性が1より大きな値を持つ場合あるいはMULTIPLE属性が指定されている場合です。この場合、SIZEの値だけの大きさのリストボックスがブラウザウィンドウに表示されます。SIZEの値がオプションの個数より小さい場合、リストボックスにスクロールバーが表示され、そのほかのオプションにアクセスできるようになります。第2は、SIZEの値が1で、MULTIPLE属性が指定されていない場合です。この場合、現在選択されているオプションが1行で表示されます。そのほかのオプションはドロップダウンメニューで表示します。第1の表示法は視覚的にわかりやすいのですが、ブラウザウィンドウのスペースをとります。第2の表示法はスペースは節約できますが、代替オプションを見るのが少し面倒です。
Select要素のoptions[]プロパティは非常に興味深いものです。これはSelect要素が示す選択肢を説明するOptionオブジェクトの配列です。lengthプロパティはこの配列の大きさ(options.length)と同じ値を保持します。詳細はOptionオブジェクトの項を参照してください。
JavaScript1.1の場合、Select要素で表示するオプションを動的に変更できます。textプロパティを変更するだけで、Optionオブジェクトで表示するテキストを変更できます。options.lengthプロパティを変更するだけで、Select要素で表示するオプションの個数を変更できます。Option()コンストラクタを使えば、表示オプションを新たに生成できます。詳細は、Select.options[]Optionの項を参照してください。
Selectオブジェクトは、Inputオブジェクトの一種であり、HTMLの<INPUT>タグで生成されないのにInputを継承することに注意してください。

関連項目

FormHTMLElementInputOption



Select.lengthプロパティ ・・・ Selectオブジェクトのオプション数

対応バージョン

クライアントサイドJavaScript 1.0

コーディング形式

select.length

解説

Selectオブジェクトのlengthプロパティは読み出し専用の整数です。select.options[]配列の要素数のことです。select.lengthselect.options.lengthは同じ値になります。



Select.onchangeハンドラ ・・・ 選択肢の変更時に呼び出されます

対応バージョン

クライアントサイドJavaScript 1.0

コーディング形式

<SELECT ... onChange="handler" ... >
select.onchange

解説

Select.onchangeプロパティは、Selectオブジェクトを定義するHTMLの<SELECT>タグにonchange属性を設定することによって定義します。この属性には任意の個数のJavaScript文を指定できます。複数の文はセミコロンで区切ります。ユーザがオプションを選択したり解除したりすると、これらのJavaScript文が実行されます。

バグ情報

Navigator 2のWindowsバージョンでSelectオブジェクトをドロップダウンメニューに表示し、そこで何かを選択しても、即座にonchange()イベントハンドラが実行されません。ユーザがページ内のどこかほかの個所でクリックするまで実行されません。このバグはNavigator 3で修正されました。

関連項目

Input.onchangeOption



Select.options[]プロパティ ・・・ Selectオブジェクトの選択肢

対応バージョン

クライアントサイドJavaScript 1.0、JavaScript 1.1で機能拡張

コーディング形式

select.options[i]
select.options.length

解説

Selectオブジェクトのoptions[]プロパティは、Optionオブジェクトの配列です。配列の個々の要素はSelectオブジェクトselectに表示する選択肢に相当します。options.lengthプロパティは、select.lengthプロパティと同じく、配列要素の個数を示します。詳細はOptionオブジェクトの項を参照してください。
JavaScript1.1の場合、次のようにしてSelectオブジェクトで表示するオプションを変更できます。

  • options.lengthを0に設定すると、Selectオブジェクト内のオプションはすべてクリアされます。
  • 現在の値より小さい値をoptions.lengthに設定すると、Selectオブジェクトに表示するオプションの個数が少なくなり、配列の末尾から順に消えていきます。
  • options[]配列の要素にnullを設定すると、そのオプションはSelectオブジェクトから削除され、そのオプションの後ろの要素が間をつめてその場所を占めます。これに伴い、インデックスも変更されます。
  • Option()コンストラクタでOptionオブジェクトを新たに生成し、options[]配列の末尾に代入すればそのオプションをSelectオブジェクトのオプションリストの末尾に追加できます。具体的には、options[options.length]に設定します。

関連項目

Option



Select.selectedIndexプロパティ ・・・ 選択されたオプション

対応バージョン

クライアントサイドJavaScript 1.0、JavaScript 1.1では読み書き可能

コーディング形式

select.selectedIndex

解説

SelectオブジェクトのselectedIndexプロパティは、選択されたオプションのインデックスを示す整数です。オプションが何も選択されていない場合、このプロパティの値は-1です。複数のオプションが選択されている場合、選択されているもののうち、先頭のオプションのインデックスだけがselectedIndexプロパティに格納されます。
selectedIndexプロパティは、JavaScript1.0では読み出し専用ですが、JavaScript1.1では読み書きが可能です。このプロパティに値を設定することで、オプションを選択できます。SelectオブジェクトにMULTIPLE属性が設定されていても、このプロパティに値を設定することで、ほかのすべてのオプションを解除することが可能です。ドロップダウンメニュー方式ではなくリストボックス方式の場合、selectedIndexプロパティに-1を設定すると、すべてのオプションが解除されます。このやり方で変更しても、onchange()イベントハンドラは呼び出されないことに注意してください。

使用上のヒントと注意

MULTIPLE属性が設定され複数のオプションが選択可能な場合、selectedIndexプロパティはあまり役立ちません。その場合、どのオプションが選択されているかを知るには、Selectオブジェクトのoptions[]配列をチェックし、Optionオブジェクトごとにselectedプロパティを調べる必要があります。

関連項目

Option



Select.typeプロパティ ・・・ フォーム要素の型

対応バージョン

クライアントサイドJavaScript 1.1

コーディング形式

select.type

解説

Selectオブジェクトのtypeプロパティは、すべてのフォーム要素で共用される読み出し専用の文字列です。要素の型のことです。Selectオブジェクトがほかのオブジェクトと異なるのは、typeプロパティに2つの値があり得ることです。第1はSelectオブジェクトが単一の選択しか許可しない(HTML定義でMULTIPLE属性がない)場合で、typeプロパティの値は"select-one"になります。第2はHTML定義でMULTIPLE属性がある場合で、typeプロパティの値は"select-multiple"になります。

関連項目

Input.type



self・・・Window.selfを参照



setTimeout()メソッド・・・Window.setTimeout()を参照



status・・・Window.statusを参照



Stringオブジェクト ・・・ 文字列のサポート

対応バージョン

コアJavaScript 1.0、JavaScript 1.1と1.2で機能拡張、ECMA-262

コンストラクタ

new String(value)   	JavaScript 1.1のみ。

引数

value生成するStringオブジェクトの初期値。この引数は必要に応じて文字列へ変換されます。

リターン値

valueあるいはvalueを文字列に変換した値を保持する新しいStringオブジェクト。

プロパティ

length	文字列を構成する文字数。

配列アクセス

Navigator 4では、文字列は配列として扱うこともできます。文字列の各要素は、その位置の文字になります。例えば、s.charAt(3)と書く代わりにs[3]と書くことができます。ただし、これはECMA-262の仕様ではなく、移植性はありません。

メソッド

anchor()
<A NAME=>で囲んだ文字列のコピーを返します。
big()
<BIG>で囲んだ文字列のコピーを返します。
blink()
<BLINK>で囲んだ文字列のコピーを返します。
bold()
<B>で囲んだ文字列のコピーを返します。
charAt()
指定された位置の文字を文字列から取り出します。
charCodeAt()
文字列内の特定の位置の文字のエンコーディングを返します。
concat()
文字列に1つまたは複数の値を連結します。
fixed()
<TT>で囲んだ文字列のコピーを返します。
fontcolor()
<FONT COLOR=>で囲んだ文字列のコピーを返します。
fontsize()
<FONT SIZE=>で囲んだ文字列のコピーを返します。
indexOf()
文字列から文字またはサブストリングを探します。
italics()
<I>で囲んだ文字列のコピーを返します。
lastIndexOf()
文字列の後方から文字またはサブストリングを探します。
link()
<A HREF=>で囲んだ文字列のコピーを返します。
match()
正規表現でパターンマッチングを行います。
replace()
正規表現で検索と置換を行います。
search()
正規表現にマッチするサブストリングの文字列を検索する。
slice()
文字列の一部を返します。
small()
<SMALL>で囲んだ文字列のコピーを返します。
split()
指定された区切り文字を使って文字列を配列に分割します。
strike()
<STRIKE>で囲んだ文字列のコピーを返します。
sub()
<SUB>で囲んだ文字列のコピーを返します。
substring()
文字列からサブストリングを取り出します。
substr()
文字列のサブストリングを抽出します。substring()の変形。
sup()
<SUP>で囲んだ文字列のコピーを返します。
toLowerCase()
すべての文字を小文字に変換して文字列のコピーを返します。
toUpperCase()
すべての文字を大文字に変換して文字列のコピーを返します。

静的メソッド

String.fromCharCode()
引数として渡された文字コードを使って新しい文字列を作成します。

解説

文字列はJavaScriptの基本的なデータ型です。Stringオブジェクト型にはさまざまなメソッドがあり、このメソッドを使って文字例値を操作します。Stringオブジェクトのlengthプロパティは文字列の文字数を示します。Stringクラスのメソッドは、文字列の前後にHTMLタグを追加したコピーを作成する簡単なものが大半です。しかしそれ以外にも、文字列から文字やサブストリングを取り出したり、文字列の中から特定の文字やサブストリングを探したりするメソッドもあります。

使用例

HTMLを生成するStringメソッドはたくさんあります。次の例を見てください。


link_text = "My Home Page".bold();
document.write(link_text.link("http://www.djf.com/~david"));
このコードを実行すると、現在解析中のHTMLドキュメントに以下の文字列が挿入されます。


<A HREF="http://www.djf.com/~david"><B>My Home Page</B></A>
そのほかにも興味深い関数を実行するStringオブジェクトのメソッドがあります。例えば、ある文字列の3番めから5番めの文字を取り出してその2つの文字を大文字に変換するコードを紹介しましょう。

 s.substring(2,5).toUpperCase();

関連項目

3章



String.anchor()メソッド ・・・ HTMLアンカーを文字列に追加する

対応バージョン

コアJavaScript 1.0

コーディング形式

string.anchor(name)

引数

nameHTML<A>タグのNAME属性の値。生成するアンカーの名前になります。

リターン値

HTMLの<A NAME="name">タグと</A>タグで囲まれた文字列のコピー。



String.big()メソッド ・・・ 文字列を<BIG>にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.big()

リターン値

HTMLの<BIG></BIG>で囲まれたstringのコピーが返されます。



String.blink()メソッド ・・・ 文字列を<BLINK>にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.blink()

リターン値

HTMLの<BLINK></BLINK>で囲まれたstringのコピーが返されます。



String.bold()メソッド ・・・ 文字列を<B>にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.bold()

リターン値

HTMLの<B></B>で囲まれたstringのコピーが返されます。



String.charAt()メソッド ・・・ 文字列からn番めの文字を獲得する

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.charAt(n)

引数

n	stringから獲得する文字のインデックス。

リターン値

stringn番めの文字。

解説

String.charAt()メソッドは文字列stringn番めの文字を返します。文字列の先頭文字のインデックスは0です。指定されたnの値が0からstring.length-1の範囲にない場合は、空の文字列が返されます。JavaScriptは文字列型以外の文字データ型を持たないので、長さ1の文字列が返されます。

関連項目

String.charCodeAt()String.indexOf()String.lastIndexOf()



String.charCodeAt()メソッド ・・・ 指定した位置の文字コードを取得する

対応バージョン

コアJavaScript 1.2、ECMA-262

コーディング形式

string.charCodeAt(n)

引数

n	エンコーディングが返される文字のインデックス。

リターン値

string内のn番目の文字のUnicodeエンコーディング。このリターン値は0から65535までの16ビットの整数です。

解説

charCodeAt()メソッドは、文字そのものを含むサブストリングを返すcharAt()と違って、特定の場所の文字エンコーディングを返します。
Unicodeエンコーディングから文字列を作成する方法については、String.fromCharCode()を参照してください。

バグ情報

Navigator 4は、16ビットUnicode文字と文字列を完全にはサポートしていません。

[監訳者注]JavaScript1.3からNavigator4でもUnicode文字列がサポートされています。

関連項目

String.charAt()String.fromCharCode()



String.concat()メソッド ・・・ 2つの文字列を連結し、新しい文字列を返す 

対応バージョン

コアJavaScript 1.2

コーディング形式

string.concat(value, ...)

引数

value, ...
文字列に連結する1つまたは複数の値。

リターン値

引数を連結した新しい文字列。

解説

concat()メソッドは、必要に応じて引数をそれぞれ文字列に変換して、順番に文字列の終端に追加し、その結果の連結した文字を返します。文字列そのものは変更されません。
String.concat()は、Array.concat()と類似しています。文字の連結を行うには、+演算子を利用したほうが簡単な場合もあります。

関連項目

Array.concat()



String.fixed()メソッド ・・・ 文字列を<TT>を使って固定幅にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.fixed()

リターン値

<TT></TT>で囲まれたstringのコピー。



String.fontcolor()メソッド ・・・ <FONT>で指定された文字列のカラーを設定する

対応バージョン

コアJavaScript 1.0

コーディング形式

string.fontcolor(color)

引数

color<FONT>タグのCOLOR属性値として使用するカラー名またはカラー値を示す文字列。

リターン値

<FONT COLOR="color"></FONT>で囲まれたstringのコピー。



String.fontsize()メソッド ・・・ <FONT>を使ってフォントサイズを設定する

対応バージョン

コアJavaScript 1.0

コーディング形式

string.fontsize(size)

引数

size1から7までの整数。あるいは先頭が+または-で、その後ろに1から7までの整数がくる文字列。整数は絶対的なフォントサイズを意味します。先頭が+または-で始まる文字列は、<BASEFONT>で指定されたフォントサイズからの相対的な値を意味します。

リターン値

<FONT SIZE="size"></FONT>タグで囲まれたstringのコピー



String.fromCharCode()メソッド ・・・ 文字コードの並びから文字列を作成する

対応バージョン

コアJavaScript 1.2、ECMA-262

コーディング形式

String.fromCharCode(c1, c2, ...)

引数

c1, c2, ...
生成する文字列の文字のUnicodeエンコーディングを表す0以上の整数。

リターン値

指定の文字を含む新しい文字列。

解説

この静的なメソッドによって、文字個別のUnicodeエンコーディングの数値を指定して新しい文字列を生成することができます。静的なメソッドであるfromCharCode()は、String()コンストラクタのプロパティであり、文字列やStringオブジェクトのメソッドではありません。
逆にString.charCodeAt()は、文字列の各文字のエンコーディングの取得を可能にするインスタンスメソッドです。

使用例


// 「hello」という文字列を生成する。
var s = String.fromCharCode(104, 101, 108, 108, 111);

バグ情報

Navigator 4は、16ビットUnicode文字と文字列を完全にはサポートしません。

[監訳者注]JavaScript1.3からNavigator4でもサポートされています。

関連項目

String.charCodeAt()



String.indexOf()メソッド ・・・ 文字列の検索

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.indexOf(substring)
string.indexOf(substring, start)

引数

substringstring内で検索するサブストリング。
startstring内で検索を開始する位置を示す省略可能な整数引数。有効な値は0(文字列内の先頭の文字)からstring.length-1(文字列内の末尾の文字)までの値です。この引数を省略した場合は、文字列内の先頭の文字から検索します。

リターン値

stringで指定されたstart位置から最初に見つけたsubstringの位置。見つからなかった場合は、-1が返されます。

解説

String.indexOf()は、文字列の先頭から終わりまでのサブストリングを検索します。文字列内のstartの位置、startが指定されない場合は文字列の先頭から開始されます。サブストリングが見つかったら、String.indexOf()は文字列で最初に見つかったサブストリングの最初の文字の位置を返します。文字列内の文字の位置は0から始まる数値です。文字列にサブストリングが見つからなければ、String.indexOf()は-1を返します。

バグ情報

Navigator 2と3では、startが文字列の長さよりも大きい場合、indexOf()は-1ではなく、空の文字列を返します。

関連項目

String.charAt()String.lastIndexOf()String.substring()



String.italics()メソッド ・・・ <I>を使って文字列をイタリックにする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.italics()

リターン値

HTMLの<I>タグと</I>タグに囲まれた文字列のコピー。



String.lastIndexOf()メソッド ・・・ 文字列を後方から検索する

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.lastIndexOf(substring)
string.lastIndexOf(substring, start)

引数

substringstring内で検索するサブストリング。
startstring内で検索を開始する位置を示す省略可能な整数引数。有効な値は0(文字列内の先頭の文字)からstring.length-1(文字列内の末尾の文字)までの値です。この引数を省略した場合は、文字列内の末尾の文字から検索します。

リターン値

string内で指定されたstart位置から最後に見つけたsubstringの位置。何も見つからなかった場合は-1が返されます。

解説

String.lastIndexOf()は、文字列の終端から先頭までのサブストリングを検索します。文字列内のstartの位置、startが指定されない場合は文字列の終端から検索が開始されます。サブストリングが見つかったら、String.indexOf()は、文字列で最初に見つかったサブストリングの先頭文字の位置を返します。このメソッドは、文字列の終端から先頭に向かって検索を行うので、最初に見つかったサブストリングが、startの位置よりも前にある文字列の最後のサブストリングになります。
文字列にサブストリングが見つからなければ、String.indexOf()は-1を返します。
String.lastIndexOf()は、終端から先頭に向かって文字列を検索しますが、文字の位置は文字列の先頭からカウントします。文字列の最初の文字は0の位置になり、最後の文字はstring.length-1になります。

関連項目

String.charAt()String.indexOf()String.substring()



String.lengthプロパティ ・・・ 文字列の長さ

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.length

解説

String.lengthプロパティは、指定されたstringの文字数を示す整数です。文字列sの最後の文字のインデックスは、s.length-1になります。



String.link()メソッド ・・・ 文字列へハイパーテキストリンクを追加する

対応バージョン

コアJavaScript 1.0

コーディング形式

string.link(href)

引数

href文字列に追加するハイパーテキストのリンク先を示すURL。この文字列引数は、HTMLの<A>タグのHREF属性になります。

リターン値

<A HREF="href"></A>で囲まれたstringのコピー。



String.match()メソッド ・・・ 文字列に対して正規表現との比較を実行する 

対応バージョン

コアJavaScript 1.2

コーディング形式

string.match(regexp)

引数

regexp	マッチングのパターンを表すRegExpオブジェクト。

リターン値

マッチングの結果を含む配列。配列の内容は、regexpg属性を伴うグローバルな正規表現かどうかによって異なります。このリターン値の詳細は以下のとおりです。

解説

match()メソッドは、stringで1つ以上のregexpのマッチングを検索します。このメソッドの振る舞いは、g属性を伴うregexpかどうかによって大きく異なります
g属性を持つregexpの場合は、match()メソッドは文字列でマッチングを1つ検索します。何も見つからなければ、match()メソッドはnullを返します。マッチングが見つかれば、match()メソッドはそのマッチングに関する情報を持った配列を返します。配列の0要素には、マッチしたテキストが入ります。その他の要素には、マッチした配列内のカッコの付きのサブ表現のテキストが入ります。これらの通常の要素のほかに、返される配列は、IndexプロパティとInputプロパティの2つのオブジェクトプロパティを持ちます。Indexプロパティはマッチしたテキストの文字列内の文字位置を表し、Inputプロパティは文字列を参照するプロパティです。
gフラグを持つregexpの場合は、match()メソッドはグローバル検索を行い、マッチするサブストリングをすべて検索します。何も見つからなければこのメソッドはnullを返し、1つ以上のマッチングがあれば配列を返します。ただし、グローバル検索の場合、返される配列の内容は大きく異なります。グローバル検索の場合は、配列要素にはマッチした文字列内の各サブストリングが入ります。この場合、返された配列にはindexプロパティやinputプロパティはありません。グローバルなマッチングの場合は、match()メソッドはカッコ付きのサブ表現とマッチングがあった文字列内の位置に関する情報は提供しないことに注意してください。グローバル検索でこれらの情報が必要な場合は、RegExp.exec()メソッドを使用してください。
match()メソッドが検索を実行する場合、このメソッドはRegExp.leftContextRegExp.rightContextRegExp.$o1、そのほかのRegExpクラスの静的プロパティを設定して、最後に行った検索に関する情報を提供します。
以下のグローバル検索は、文字列内のすべての数字を検索します。

"1 plus 2 equals 3".match(/\d+/g)  // ["1", "2", "3"]を返す


以下の非グローバルな検索は、いくつかのカッコ付きのサブ表現を用いたより複雑な正規表現です。この正規表現はURLを検索し、サブ表現はURLのプロトコル、ホスト、パスの部分を検索します。

var url = /(\w+):\/\/([\w.]+)\/(\S*)/;
var text = "Visit my home page at http://www.isp.com/~david";
var result = text.match(url); 
if (result != null) {
    var fullurl = result[0];   // http://www.isp.com/~davidを含む
    var protocol = result[1];  // "http"を含む
    var host = result[2];      // www.isp.comを含む
    var path = result[3];      // "~david"を含む
}

関連項目

RegExpRegExp.exec()RegExp.test()String.replace()String.search()、10章



String.replace()メソッド ・・・ 文字列と正規表現の比較を行い、マッチした部分を新しい文字列で置き換える

対応バージョン

コアJavaScript 1.2

コーディング形式

string.replace(regexp, replacement)

引数

regexp置換のパターンを表すRegExpオブジェクト。
replacement置換テキストを表す文字列。解説の箇所で説明しますが、ドル記号($)はこの置換文字列では特殊な意味を持ちます。

リターン値

最初またはすべてのマッチングでreplacementによって置換された新しい文字列。

解説

replace()メソッドは文字列に対して検索と置換を行います。このメソッドは、文字列でregexpにマッチするサブストリングを探し、replacementでそれらを置換します。グローバル検索のg属性が設定されたregexpの場合は、replace()メソッドはすべてのマッチするサブストリングを置換します。g属性が設定されていない場合は、最初にマッチするサブストリングのみを置換します。
ドル記号($)はreplacement文字列では特殊な意味を持ちます。以下の表に示すように、この記号は置換で使われるパターンマッチングの文字列を示します。置換文字列の中でドル記号を文字として使用したい場合は、エスケープ文字のバックスラッシュを使用する必要があります(\\$)。

文字置換
$1,$2, ... $9 regexpで最初から9番目までのカッコ付きサブ表現のテキスト
$+ regexpで最後にマッチしたカッコ付きサブ表現。
$ regexpにマッチしたサブストリング。
$` マッチした文字列の左側のテキスト。
$' マッチしたテキストの右側の文字列。
\\$ 文字としてのドル記号。


replace()メソッドが置換を行うと、RegExp.leftContextRegExp.rightContextRegExp.$1、そのほかのRegExpクラスのプロパティを設定して最後に行われた置換についての情報を提供します。

使用例

「JavaScript」という言葉の中の大文字小文字表記を統一するには、以下のようにします。

text.replace(/javascript/i, "JavaScript");

「Doe, John」という名前を「John Doe」という形式に置換するには、以下のようにします。

name.replace(/(\w+)\s*,\s*(\w+)/, "$2 $1");

""を``''形式に置換するには、以下のようにします。

text.replace(/"([^"]*)"/g, "\[ga]\[ga]$1''");

関連項目

RegExpRegExp.exec()RegExp.test()String.match()String.search()、10章



String.search()メソッド ・・・ 正規表現を検索する

対応バージョン

コアJavaScript 1.2

コーディング形式

string.search(regexp)

引数

regexp文字列で検索されるRegExpオブジェクト。

リターン値

regexpにマッチするstringの最初のサブストリングの開始位置を返す。マッチングがなければ-1を返す。

解説

search()メソッドは、文字列でregexpにマッチするサブストリングを検索し、マッチしたサブストリングの先頭文字の位置を返します。もしマッチングがなければ、-1を返します。
search()メソッドはグローバルなマッチングは行いません。このメソッドは、regexpg修飾子があろうとなかろうと、常に最初のマッチングの位置を返します。
マッチングを見つけると、search()メソッドはRegExp.leftContextRegExp.rightContextRegExp.$1そのほかのRegExpクラスのプロパティを設定して、そのマッチングについてのより多くの情報を提供します。

使用例


var s = "JavaScript is fun";
s.search(/script/i)  // 4を返す
s.search(/a()a/)    // 1を返し、RegExp.$1 を "v"に設定する

関連項目

RegExpRegExp.exec()RegExp.test()String.match()String.replace()、10章



String.slice()メソッド ・・・ 文字列の一部を抜き出す

対応バージョン

コアJavaScript 1.2

コーディング形式

string.slice(start, end)

引数

startスライスが開始する文字列のインデックス。マイナス値の場合は、この引数は文字列の終端からの位置を表します。つまり、-1は最後の文字を表し、-2は最後から2番目の文字、といった具合です。
endスライスの終端の直後の文字インデックス。これが指定されないと、スライスには文字列の先頭から終端までのすべての文字が含まれます。この引数がマイナス値の場合は、文字列の終端からの位置を表します。

リターン値

先頭からのすべての文字を含む新しい文字列(ただし終端の文字は含まない)。

解説

slice()メソッドは、文字列のスライスまたはサブストリングを返します。このメソッドは、文字列を変更しません。
文字列メソッドであるslice()、substring()そしてsubstr()は、すべて文字列の指定された部分を返します。slice()メソッドはマイナス値の引数を受け付けるので、substring()メソッドよりも柔軟といえます。slice()メソッドは、2つの文字の位置でサブストリングを指定するところが、1つの位置と長さを利用するsubstr()メソッドとは異なります。String.slice()メソッドはArray.slice()と類似しています。

使用例


var s = "abcdefg";
s.slice(0,4)    // abcdを返す。
s.slice(2,4)    // cdを返す。
s.slice(4)      // efgを返す。
s.slice(3,-1)   // defを返す。
s.slice(3,-2)   // deを返す。
s.slice(-3,-1)  // Navigatorではef を返し、IE4ではabcdef を返す。

バグ情報

マイナス値のstartはIE4では機能しません。文字列の終端からの文字位置を表す代わりに、文字位置を0に指定します。

関連項目

Array.slice()String.substring()



String.small()メソッド ・・・ 文字列を<SMALL>にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.small()

リターン値

<SMALL></SMALL>で囲まれたstringのコピー。



String.split()メソッド ・・・ 文字列を配列に分割する

対応バージョン

コアJavaScript 1.1、ECMA-262

コーディング形式

string.split(delimiter);

引数

delimiterstringを分割する文字または文字列。区切り文字を指定しなかった場合は、要素が1つだけで、その要素が元の文字列のままという配列が返されます。

リターン値

stringdelimiterで分割したサブストリングの配列。

解説

split()メソッドは指定された文字列を分割し、サブストリングの配列を返します。指定されたdelimiterを検出するたびに、そこで文字列を分割しサブストリングを作成します。区切り文字(文字列)はサブストリングには含まれません。
delimiterが指定されなかった場合、文字列は分割されず、1つの要素のみを持ち、その要素が元の文字列という配列が返されます。空の文字列がdelimiterとして指定されると、返される配列では文字列の各文字が区切り要素となります。
JavaScript 1.2では、正規表現を区切り文字として渡すことができます。したがって、1つ以上の空白文字の区切り文字を示す/\s+/など、より複雑な区切り文字が可能になります。
String.split()メソッドの逆の操作をするのは、Array.join()メソッドです。

使用例

構造を持つ文字列を処理するときにsplit()メソッドが役立ちます。次の例を見てください。


s = "1,2,3,4,5"
a = s.split(",");
コマンドなどの文字列を解析するときにもsplit()メソッドが役立ちます。次のようにして空白で区切った単語に文字列を分割します。

words = sentence.split(' ');
JavaScript 1.2では、正規表現を区切り文字として使用できるように改良されました。

words = sentence.split(/\s+/);

関連項目

Array.join()RegExp、10章



String.strike()メソッド ・・・ 文字列を<STRIKE>にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.strike()

リターン値

<STRIKE></STRIKE>で囲まれたstringのコピー。



String.sub()メソッド ・・・ <SUB>で表された添え字にする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.sub()

リターン値

<SUB></SUB>で囲まれたstringのコピー。



String.substr()メソッド ・・・ 指定の位置から指定の文字数分だけ抜き出す

対応バージョン

コアJavaScript 1.2

コーディング形式

string.substr(start, length)

引数

startサブストリングの開始位置。この引数がマイナス値の場合、文字列の終端からの位置を示します。つまり、-1は最後の文字を示し、-2は終端から2番目の文字を示す、といった具合になります。
lengthサブストリングに含まれる文字の数。この引数が省略されると、返されるサブストリングには文字列の先頭から終端までのすべての文字が含まれます。

リターン値

startが指定する文字を含む)文字列の先頭部分からlength文字までのコピー。lengthが指定されていない場合は、文字列の終端までのコピー。

解説

substr()メソッドは、文字列のサブストリングを抽出して返します。このメソッドはstringを変更しません。
substr()メソッドは、必要なサブストリングを文字位置とlengthで表します。このメソッドは、String.substring()や2つの文字位置でサブストリングを指定するString.splice()の代替として利用すると便利です。

使用例


var s = "abcdefg";
s.substr(2,2);   // cdを返す。
s.substr(3);     // defgを返す。
s.substr(-3,2);  // Navigatorではefを返し、IE 4ではabを返す。

バグ情報

マイナス値のstartは、IE 4では機能しません。文字列の終端からの文字位置を表す代わりに、文字位置を0に指定します。

関連項目

String.slice()String.substring()



String.substring()メソッド ・・・ サブストリングを返す

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.substring(from, to)

引数

fromstring内で指定されたサブストリングの先頭文字の位置を示す整数。fromの値は0からstring.length-1までの値でなければなりません。
tostring内で指定されたサブストリングの最終文字の位置より1だけ大きい整数(省略可)。toの値は1からstring.lengthまでの値でなければなりません。

リターン値

stringのサブストリングを保持し、長さがto-fromの新文字列。この新文字列は、stringfromからto-1までの文字で構成されます。

解説

String.substring()メソッドはstring中の指定されたサブストリングを返します。fromtoが等しい場合、String.substring()メソッドは空の文字列(長さ0)を返します。fromtoより大きい場合、この2つの引数を取り替えてから処理を進めます。

使用上のヒントと注意

String.substring()メソッドは使い方がわかりにくいかもしれません。from位置の文字はサブストリングに含まれますが、to位置の文字はサブストリングに含まれないことに注意しましょう。このような引数の指定方法なので、返されるサブストリングの長さは常にto-fromの値と等しくなります。
文字列からサブストリングを取り出す方法として、開始文字とサブストリングの長さを指定するほうが便利な場合がよくあります。以下に示す関数を使えばそのように指定できます。JavaScript1.2では、String.substr()を使ってこれを行うことができます。またJavaScript1.2では、String.slice()メソッドも提供されています。このメソッドのほうがsubstringよりも便利な場合もあります。

関連項目

String.charAt()String.indexOf()String.lastIndexOf()String.slice()String.substr()



String.sup()メソッド ・・・ 文字列を<SUP>を使ってスーパースクリプトにする

対応バージョン

コアJavaScript 1.0

コーディング形式

string.sup()

リターン値

<SUP></SUP>タグで囲まれたstringのコピー。



String.toLowerCase()メソッド ・・・ 小文字に変換する

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.toLowerCase()

リターン値

すべての大文字を小文字に変換したstringのコピー。



String.toUpperCase()メソッド ・・・ 大文字に変換する

対応バージョン

コアJavaScript 1.0、ECMA-262

コーディング形式

string.toUpperCase()

リターン値

すべての小文字を大文字に変換したstringのコピー。



Styleオブジェクト ・・・ カスケーディングスタイルシート(CSS)の属性

対応バージョン

クライアントサイドJavaScript 1.2

コーディング形式

Navigator

document.classes.className.tagName
document.ids.elementName
document.tags.tagName
document.contextual()


IE

htmlElement.style

プロパティ

Styleオブジェクトは、ブラウザがサポートするCSSのプロパティを持っています。

Navigatorメソッド

borderWidths()
4辺の枠の幅のプロパティを指定します。
margins()
4辺のマージンのプロパティを指定します。
paddings()
4辺のパディングプロパティを指定します。

解説

Styleオブジェクトのプロパティは、カスケーディングスタイルシート (CSS)の属性に対応し、これらの属性の値を指定します。Navigator 4とIE 4 はどちらもCSSとStyle オブジェクトをサポートしますが、これらのブラウザはそれぞれまったく異なる方法でStyleオブジェクトを参照します。詳細は「17章」を参照してください。
Sylteオブジェクトのプロパティは、ブラウザがサポートするCSS属性に直接対応します。ただし、JavaScript文法との互換性を保つため、ハイフンのついたCSS属性の名前は、ハイフンを取って大文字と小文字を混在させて書かれます。したがって、例えばCSSのcolor属性はStleオブジェクトのcolorプロパティで表され、CSSのbackground-color属性はStyleオブジェクトのbackgroundColorプロパティで表されます。
CSS標準は、多くの属性を定義します。また、新しいCSS-2標準はさらに多くの属性を定義します。CSS属性、その値またドキュメントのスタイルに及ぼすそれらの効果についての詳細は、本書では扱いません。したがって、Styleオブジェクトのプロパティについても、本書では完全にはカバーしませんが、以下の表にNetscape社とMicrosoft社によって提供されたStyleプロパティを紹介します。ブラウザのCSSサポートが向上し、CSS-2標準がリリースされれば、この表には間違いなく新しいプロパティが追加されるでしょう。以下に挙げたプロパティに加えて、Navigator 4のSytleオブジェクトは、borderWidths()margins()paddings()という3つの便利なメソッドを提供します。これらは、別のリファレンス項目に記載されています。,
以下に、Navigator 4のStyleオブジェクトのプロパティを示します。

backgroundColor clear listStyleType paddingTop
backgroundImage color marginBottom textAlign
borderBottomWidth display marginLeft textDecoration
borderColor fontFamily marginRight textIndent
borderLeftWidth fontSize marginTop textTransform
borderRightWidth fontStyle paddingBottom whiteSpace
borderStyle fontWeight paddingLeft
borderTopWidth lineHeight paddingRight


以下に、IE4のStyleプロパティを示します。

background borderWidth overflow
background-Attachment clear paddingBottom
backgroundColor clip paddingLeft
backgroundImage color paddingRight
backgroundPosition cssText paddingTop
backgroundPositionX cursor pageBreakAfter
backgroundPositionY display pageBreakBefore
backgroundRepeat filter pixelHeight
border font pixelLeft
borderBottom fontFamily pixelTop
borderBottomColor fontSize pixelWidth
borderBottomStyle fontStyle posHeight
borderBottomWidth fontVariant position
borderColor fontWeight posLeft
borderLeft height posTop
borderLeftColor left posWidth
borderLeftStyle letterSpacing styleFloat
borderLeftWidth lineHeight textAlign
borderRight listStyle textDecoration
borderRightColor listStyleImage textIndent
borderRightStyle listStylePosition textTransform
borderRightWidth listStyleType top
borderStyle margin verticalAlign
borderTop marginBottom visibility
borderTopColor marginLeft width
borderTopStyle marginRight zIndex
borderTopWidth marginTop

関連項目

17章



Style.borderWidths()メソッド・・・4辺の枠の幅のプロパティを設定する

対応バージョン

クライアントサイドNavigator 4

コーディング形式

style.borderWidths(top, right, bottom, left)

引数

top	borderTopWidthプロパティを指定する文字列。
right	borderRightWidthプロパティを指定する文字列。
bottom	borderBottomWidthプロパティを指定する文字列。
left	borderLeftWidthプロパティを指定する文字列。

解説

borderWidths()メソッドはstyleの枠の4辺の幅の値を設定するコンビニエンスメソッドです。



Style.margins()メソッド・・・すべてのマージンのプロパティを設定する

対応バージョン

クライアントサイドNavigator 4

コーディング形式

style.margins(top, right, bottom, left)

引数

top	marginTopプロパティを指定する文字列。
right	marginRightプロパティを指定する文字列。
bottom	marginBottomプロパティを指定する文字列。
left	marginLeftプロパティを指定する文字列。

解説

margins()メソッドは、styleの四方のマージンの値を設定する便利なメソッドです。



Style.paddings()メソッド・・・パディングプロパティを設定する

対応バージョン

クライアントサイドNavigator 4

コーディング形式

style.paddings(top, right, bottom, left)

引数

top	addingTopプロパティを指定する文字列。
right	addingRightプロパティを指定する文字列。
bottom	addingBottomプロパティを指定する文字列。
left	addingLeftプロパティを指定する文字列。

解説

paddings()メソッドは、styleのすべてのパディングプロパティを設定する便利なメソッドです。



Submit要素 ・・・ フォーム送信ボタン

対応バージョン

クライアントサイドJavaScript 1.0、JavaScript 1.1で機能拡張

継承元

Input, HTMLElement

コーディング形式


form.name
form.elements[i]
form.elements['name']

プロパティ

Submitオブジェクトは、InputとHTMLElementからプロパティを継承し、以下のプロパティを定義または上書きしています。

valueTMLのVALUE属性で設定する文字列(読み出し専用)。ボタンに表示するテキスト文字のこと。VALUE属性を指定しなかったとき、ボタンのラベルはデフォルトで"Submit Query"になります(Navigatorの場合)。

メソッド

Submitオブジェクトは、InputとHTMLElementからメソッドを継承します。

イベントハンドラ

Submitオブジェクトは、InputとHTMLElementからイベントハンドラを継承し、以下のイベントハンドラを定義または上書きしています。

onclickSubmitボタンをクリックしたときに呼び出されます。

HTML構文

Submit要素は、標準HTMLの<INPUT>タグで生成します。JavaScript用にonClick属性が追加されています。

<FORM>
    ...
  <INPUT
    TYPE="submit"   Submitボタンを指定する。
    [ VALUE="label" ]   ボタンに表示するテキスト。
   valueプロパティを表わす。
    [ NAME="name" ]   ボタンの参照名。nameプロパティで表わす。
    [ onClick="handler" ]   ボタンのクリック時に実行されるJavaScript文。
  >
    ...
</FORM>

解説

Submit要素は、Button要素と同じプロパティとメソッドを持ちますが、その用途はさらに限定されます。Submitボタンをクリックすると、このボタンを保持するフォーム内のデータを、フォームのACTION属性で指定されたサーバへ送り、そのサーバから返されたHTMLページをロードします。ただし、JavaScript1.1では、Submit.onclickあるいはForm.onsubmitイベントハンドラがfalseを返すと、フォームは送信されません。 
JavaScript 1.1では、Form.submit()メソッドでフォームを送信することもできます。
SubmitオブジェクトにVALUE属性を指定しなかった場合、ラベルはSubmit Queryになります。場合によっては、ボタンのラベルをSubmit、Done、Sendなどにするとよいでしょう。

関連項目

ButtonForm.onsubmitForm.submit()HTMLElementInput



Submit.onclickハンドラ ・・・ Submitボタンがクリックされたときに呼び出される

対応バージョン

クライアントサイドJavaScript 1.0、JavaScript 1.1で機能拡張

コーディング形式

<INPUT TYPE="submit" onClick="handler" ... >
submit.onclick

解説

Submitプロパティのonclickプロパティは、ユーザがSubmitボタンをクリックすると呼び出されるイベントハンドラ関数を参照します。詳細はHTMLElement.onclickを参照してください。ただし、汎用的なHTMLElement.onclickとは異なり、Submit.onclickはJavaScript 1.0からサポートされています。
Submitボタンには、フォームをサーバに送信するという特別な機能があります。onclickイベントハンドラがSubmitボタンにほかの機能を追加する場合もあります。JavaScript 1.1では、onclickハンドラはfalseを返してSubmitオブジェクトにフォームを送信させないようにすることもできます(例えば、入力が必要なフォームのフィールドに入力がなされなかった場合、onclickハンドラはフォームの検証を行ってfalseを返す、といったことが可能です)。

関連項目

Form.onsubmitForm.submit()HTMLElement.onclick



Submit.valueプロパティ・・・ Submitボタンのラベル

対応バージョン

クライアントサイドJavaScript 1.0

コーディング形式

submit.value

解説

Submitオブジェクトのvalueプロパティは読み出し専用の文字列です。Submitボタンのラベルとして表示するテキスト文字列のことです。ボタンを生成した<INPUT>タグのVALUE属性を使って指定します。VALUE属性を指定しなかった場合のデフォルトは" Submit Query"です。



sunプロパティ ・・・ sun.*Javaパッケージ

対応バージョン

クライアントサイドNavigator 3

コーディング形式

sun

解説

sunプロパティは、Packages.sunと同義で、sun.*Javaパッケージ名階層のトップノードであるJavaPackageオブジェクトへの参照を持ちます。

関連項目

JavaPackagePackages.sun



トップページに戻る