JavaScript の組み込みオブジェクトを理解する

JavaScript 言語に固有のオブジェクトの基本を理解しましょう。

Kris Hadlock, Web Developer/Designer, Studio Sedition

Photo of Kris HadlockKris Hadlock は、1996年から契約 Web 開発者および設計者として、SPIN Magazine、IKEA、United Airlines、JP Morgan Chase、GoDaddy Software、Fire Mountain Gems などの企業のプロジェクトを手掛けてきました。著書には『Ajax for Web Application Developers』(Sams)、『The ActionScript Migration Guide』(New Riders) があります。また、コラムニストおよびライターとしても、Peachpit.com、InformIT.com、Practical Web Design magazine などの数々の Web サイトや設計関連の雑誌で活躍しています。彼は、フォームと関数の融合を専門とする Web 設計およびソフトウェア開発会社、www.studiosedition.com の創始者でもあります。



2011年 9月 16日

どのプログラミング言語にも、固有の (つまり組み込みの) オブジェクトがあり、それらのオブジェクトによってプログラミング言語の基本機能が実現されています。固有オブジェクトはカスタム・コードの作成に使用する言語の基礎であり、それらのオブジェクトと皆さんの想像力を利用することで、カスタム機能を実現することができます。JavaScript には多くの固有オブジェクトがあり、それらのオブジェクトによって言語としての JavaScript が定義されています。この記事では、最もよく使われるオブジェクトをいくつか取り上げ、それらのオブジェクトの機能と使い方の基本を説明します。

Number

JavaScript の Number オブジェクトは数値に対するラッパーです。new キーワードを付けた Number オブジェクトを変数に設定すれば、その変数を JavaScript コードの中で使用できるようになります。

var myNumber = new Number(numeric value);

あるいは、変数に数値を設定するだけで Number オブジェクトを作成することができ、この変数を利用すれば、Number オブジェクトのプロパティーやメソッドにアクセスできるようになります。

数値を格納する他に、Number オブジェクトには数字に関する情報の操作や取得のためのさまざまなプロパティーやメソッドが含まれています。Number オブジェクトのプロパティーはすべて読み取り専用の定数です。つまり、それらのプロパティーの値は常に同じままであり、変更することはできません。Number オブジェクトには以下の 4 つのプロパティーが含まれています。

  • MAX_VALUE
  • MIN_VALUE
  • NEGATIVE_INFINITY
  • POSITIVE_INFINITY

MAX_VALUE1.7976931348623157e+308 という値を返します。この値は JavaScript で扱うことができる最大の数値です。

document.write(Number.MAX_VALUE);
// Result is: 1.7976931348623157e+308

あるいは、MIN_VALUE を使用すると、JavaScript で使用できる最小の数値である 5e-324 が返されます。

document.write(Number.MIN_VALUE);
// Result is: 5e-324

NEGATIVE_INFINITY は JavaScript で処理できる最大の負の数値であり、-Infinity と表現されます。

document.write(Number.NEGATIVE_INFINITY);
// Result is: -Infinity

The POSITIVE_INFINITY プロパティーは MAX_VALUE よりも大きな任意の数字であり、Infinity と表現されます。

document.write(Number.POSITIVE_INFINITY);
// Result is: Infinity

また Number オブジェクトには数値フォーマットを指定したり、数値を変換したりするためのメソッドもあります。以下はそれらのメソッドです。

  • toExponential
  • toFixed
  • toPrecision
  • toString
  • valueOf

基本的に、各メソッドは名前どおりのことをします。例えば toExponential メソッドは指数形式の数値の文字列表現を返します。各メソッドのユニークな点は各メソッドで想定される引数にあります。toExponential メソッドにはオプションの引数が 1 つあり、この引数を使用することで、有効桁数を何桁使用するかを設定することができます。toFixed メソッドは渡される引数を基に、小数点以下の精度を決定します。toPrecision メソッドは渡される引数を基に、表示される有効桁数を決定します。

JavaScript の各オブジェクトには toString メソッドと valueOf メソッドが含まれています。そのため、先ほどのセクションでは、これらのメソッドについては説明しませんでした。toString メソッドは (この場合は) 数値の文字列表現を返しますが、他のオブジェクトの場合には、そのオブジェクト型の文字列表現を返します。valueOf メソッドは、このメソッドを呼び出すオブジェクト型のプリミティブ値 (この場合は Number オブジェクト) を返します。

Number オブジェクト単体ではそれほど強力に思えないかもしれませんが、Number オブジェクトはあらゆるプログラミング言語に不可欠であり、JavaScript の場合も例外ではありません。JavaScript の Number オブジェクトはすべての数学的な手続きの基本であり、数学的な手続きは本質的にすべてのプログラミング言語の基本です。


Boolean

JavaScript ではどのようなロジックを作成しようとする場合にも、Boolean オブジェクトが必要です。Boolean は「真」(true) または「偽」(false) の値を表現するオブジェクトです。Boolean オブジェクトには、「偽」とみなされる値がいくつもあり、それらは、0-0null"" (空の文字列)、未定義とみなされる値 (NaN)、そしてもちろん、false です。それら以外のブール値は「真」とみなされます。Boolean オブジェクトは new キーワードを使用してインスタンス化することもできますが、ほとんどの場合、Boolean オブジェクトは変数に「真」または「偽」の値が設定されます。

var myBoolean = true;

Boolean オブジェクトには toString メソッドと valueOf メソッドが含まれていますが、これらのメソッドはあまり使用される可能性はありません。Boolean オブジェクトが最もよく使われるのは、条件文で単に真または偽の評価をする場合です。Boolean と条件文とを組み合わせると、JavaScript でロジックを作成することができます。そうした条件文の例として、ifif...elseif...else...if、そして switch 文があります。条件文と組み合わせて Boolean を使用することで、スクリプト化された条件に基づいて結果を判断することができます。リスト 1 は条件文を Boolean と組み合わせた単純な例を示しています。

リスト 1. Boolean と組み合わせた条件文
var myBoolean = true;
if(myBoolean == true) {
   // If the condition evaluates to true
}
else {
   // If the condition evaluates to false
}

言うまでもありませんが、Boolean オブジェクトは JavaScript にとって非常に重要であり、Boolean オブジェクトがないと、条件文での評価対象がなくなってしまいます。


String

JavaScript の String オブジェクトはテキスト値のラッパーです。テキストを格納する他に、String オブジェクトにはテキストに関する情報を操作または収集するための 1 つのプロパティー、そしてさまざまなメソッドが含まれています。Boolean オブジェクトの場合と同じように、String オブジェクトをインスタンス化しなくても String オブジェクトを使用することができます。例えば変数を文字列として設定すると、その変数から String オブジェクトのすべてのプロパティーやメソッドを利用できるようになります。

var myString = "My string";

String オブジェクトのプロパティーは 1 つのみ (length のみ) であり、このプロパティーは読み取り専用です。length プロパティーを使用すると、文字列の長さのみが返され、その長さを外部から変更することはできません。以下のコードは length プロパティーを使用して文字列の中にある文字数を判断する例を示しています。

var myString = "My string";
document.write(myString.length);
// Results in a numeric value of 9

このコードを実行すると、2 つの単語の間の空白も 1 つの文字として数えられるため、結果は 9 になります。

String オブジェクトにはかなりの数のメソッドがあり、それらのメソッドを使用してテキストに関する情報を操作、収集することができます。以下はそれらのメソッドの一覧です。

  • charAt
  • charCodeAt
  • concat
  • fromCharCode
  • indexOf
  • lastIndexOf
  • match
  • replace
  • search
  • slice
  • split
  • substr
  • substring
  • toLowerCase
  • toUpperCase

chartAt メソッドを使用すると、引数として渡すインデックスを基に、特定の文字を取得することができます。以下のコードは文字列の最初の文字を返す方法の例を示しています。

var myString = "My string";
document.write(myString.chartAt(0);
// Results in M

これとは逆の結果を得たい場合には、インデックスを使用して文字列内の文字を返すのではなく、指定の文字または文字セットのインデックスを返すメソッドが 2 つあります。それは indexOf メソッドと lastIndexOf メソッドであり、どちらのメソッドにも searchStringstart という 2 つのパラメーターがあります。searchString パラメーターはメソッドに対して検索する文字列を指定し、start パラメーターは検索の開始点を指定します。2 つのメソッドの違いは、indexOf は文字列の末尾へ向かって検索して最初に検出されたインデックスを返すのに対し、lastIndexOf は文字列の先頭に向かって検索して最初に検出されたインデックスを返す点です。

charCodeAt メソッドは charAt と似ていますが、唯一の異なる点は charCodeAt メソッドの場合は Unicode 文字を返す点です。Unicode に関連して String オブジェクトに含まれている別のメソッドとして、Unicode を文字に変換する fromCharCode があります。

文字列同士を連結したい場合には、プラス記号 (+) を使って文字列同士を「足し合わせる」ことや、もっと適切な方法として concat メソッドを使用することもできます。concat メソッドは文字列引数をいくつでも受け付け、それらの文字列を連結し、連結された結果を新しい文字列として返します。リスト 2concat インスタンスを使用して複数の文字列を連結し、1 つの文字列にする方法を示しています。

リスト 2. concat メソッドを使用して複数の文字列を連結する
var myString1 = "My";
var myString2 = " ";
var myString3 = "string";
document.write(myString.concat(myString1, myString2, myString3);
// Results in "My String"

また、正規表現を引数として受け付け、文字列を検出または変更する一連の String メソッドもあります。そうしたメソッドとして、matchreplacesearch などがあります。match メソッドは正規表現を使用して特定の文字列を検索し、一致したすべての文字列を返します。replace メソッドは実際にサブ文字列または正規表現と、(2 番目のパラメーターとして) 置換文字列を受け付け、一致したものをすべて置換文字列で置き換え、更新された文字列を返します。最後の search メソッドは正規表現に一致するものを検索し、その位置を返します。

文字列を変更する必要がある場合、便利なメソッドがいくつかあります。その第 1 は slice メソッドです。slice メソッドは 1 つのインデックスを基に、または開始インデックスと終了インデックスの組み合わせを基に、文字列の一部を抽出して返します。slice メソッドに似た別のメソッドとして、split があります。split メソッドは区切り引数が検出されるたびに、文字列を分割してサブ文字列の配列にします。例えば引数としてカンマ (,) が渡された場合、その文字列はカンマがあるごとに分割され、新しいサブ文字列になります。文字列を変更できる次のメソッドとして、substr メソッド (引数として指定された開始点と長さに基づいて文字列から一連の文字を抽出します) と substring メソッド (引数として指定された 2 つのインデックスに基づいて文字列から一連の文字を抽出します) があります。文字列を変更できる最後のメソッドとして、それぞれ文字列内の文字を小文字または大文字に変換する toLowerCasetoUpperCase があります。文字列の大/小文字に一貫性がないことがよくあるため、これらのメソッドは文字列値を比較する際に便利です。これらのメソッドを使用することで、大/小文字によらず、確実に値を比較することができます。


Date

JavaScript の Date オブジェクトを使用すると、日付や時刻を扱うことができます。どのような結果が必であるかかにより、さまざまな方法で Date オブジェクトをインスタンス化することができます。例えば、以下のように引数なしで Date オブジェクトをインスタンス化することができます。

var myDate = new Date();

あるいは以下のように、引数として milliseconds を渡すことや、

var myDate = new Date(milliseconds);

以下のように、引数として dateString を渡すこと、

var myDate = new Date(dateString);

そして以下のように、複数の引数を渡して完全な日付を作成することもできます。

var myDate = new Date(year, month, day, hours, minutes, seconds, milliseconds);

また、Date オブジェクトにはいくつかのメソッドがあり、いったん Date オブジェクトがインスタンス化されると、それらのメソッドを使用できるようになります。それらのメソッドの大半は現在の時刻の特定部分を取得するためのものです。Date オブジェクトで利用できるゲッター・メソッドには以下のようなものがあります。

  • getDate
  • getDay
  • getFullYear
  • getHours
  • getMilliseconds
  • getMinutes
  • getMonth
  • getSeconds
  • getTime
  • getTimezoneOffset

これを見るとわかるように、どんな値を返すかという点で、それぞれのメソッドは非常に単純です。各メソッドの違いは返される値の範囲にあります。例えば getDate メソッドは何日であるかを数値で返し、値の範囲は 1 から 31 です。getDay メソッドは何曜日であるかを数値で返し、値の範囲は 0 から 6 です。getHours メソッドは何時であるかを数値で返し、値の範囲は 0 から 23 です。そして getMilliseconds 関数は 0 から 999 の範囲のミリ秒を表す値を返します。getMinutes メソッドと getSeconds メソッドは 0 から 59 の範囲の値を返し、getMonth メソッドは月を表す 0 から 11 の範囲の値を返します。このリストの中で唯一ユニークなメソッドは getTimegetTimezoneOffset です。getTime メソッドは 1970年 1月 1日午前 12時からの時間をミリ秒で表した数値を返し、getTimezoneOffset メソッドは GMT と現地時間との差を分で返します。

ほとんどのゲッター・メソッドには、同じ範囲の値を引数として受け付けるセッター・メソッドもあります。それらのセッター・メソッドを以下に挙げます。

  • setDate
  • setFullYear
  • setHours
  • setMilliseconds
  • setMinutes
  • setMonth
  • setSeconds
  • setTime

上記のゲッター・メソッドそれぞれに対応して、同じ範囲の値を協定世界時で返すメソッドがあります。以下はそれらのメソッドです。

  • getUTCDate
  • getUTCDay
  • getUTCFullYear
  • getUTCHours
  • getUTCMilliseconds
  • getUTCMinutes
  • getUTCMonth
  • getUTCSeconds

もちろん、最初に挙げたゲッター・メソッドすべてに対応してセッター・メソッドがあるのと同じように、これらのゲッター・メソッドに対応して協定世界時で値を設定するセッター・メソッドがあります。以下はそれらのメソッドです。

  • setUTCDate
  • setUTCFullYear
  • setUTCHours
  • setUTCMilliseconds
  • setUTCMinutes
  • setUTCMonth
  • setUTCSeconds

最初に触れたように、この記事では toString メソッドに関してはあまり詳しく説明しませんが、Date オブジェクトには、日付を文字列に変換するメソッドとして注目に値するものがいくつかあります。例えば、文字列に日付を追加する場合、または比較を行う文に日付を使用する場合など、日付または日付の一部を文字列に変換しなければならない場合があります。Date オブジェクトには、少し異なる方法で Date オブジェクトを文字列に変換するメソッドがいくつかあります。以下はその一例です。

  • toDateString
  • toLocaleDateString
  • toLocaleTimeString
  • toLocaleString
  • toTimeString
  • toUTCString

toDateString メソッドは日付を文字列に変換します。

var myDate = new Date();
document.write(myDate.toDateString());

toDateString は現在の日付を Tue Jul 19 2011 というフォーマットで返します。

toTimeString メソッドは Date オブジェクトの時刻を文字列に変換します。

var myDate = new Date();
document.write(myDate.toTimeString());

toTimeString は 23:00:00 GMT-0700 (MST) というフォーマットの文字列として時刻を返します。

日付を文字列に変換する最後のメソッドは、日付を世界協定時の文字列に変換する toUTCString です。

ロケールを使用して日付を文字列に変換するメソッドがいくつかありますが、この記事の執筆時点では、それらのメソッドは Google Chrome ではサポートされていません。これらのサポートされていないメソッドは、toLocaleDateStringtoLocaleTimeStringtoLocaleString です。

JavaScript の Date オブジェクトはちょっと見ると単純に思えますが、単に現在の日付を表示するための便利な手段というだけではなく、それ以上の機能を備えています。どのような機能を実現できるのかは、皆さんの発想次第です。例えば、カウントダウン・ティッカーなど、時間に関連する任意の機能を作成するための基礎として Date オブジェクトを使用することができます。


Array

JavaScript の Array オブジェクトは変数を強化したものです。Array オブジェクトを使用すると 1 つの変数の中に 1 度に複数の値を格納することができます。また Array オブジェクトには数多くのメソッドがあり、それらのメソッドを使用することで、Array オブジェクトに格納された値に関する情報を操作または収集することができます。Array オブジェクトは値の型を区別しませんが、1 つの配列には同じ型の値を使用するのが適切なプラクティスです。つまり、例えば同じ配列に数値と文字列を使用することは適切なプラクティスではありません。Array オブジェクトのプロパティーはすべて読み取り専用です。つまりこれらのプロパティーの値を外部から変更することはできません。

Array オブジェクトの唯一のプロパティーは length です。配列内の要素の数を返す length プロパティーは、ループを使用して配列内の値に繰り返し処理を行う際によく使用されます。

var myArray = new Array(1, 2, 3);
for(var i=0; i<myArray.length; i++) {
   document.write(myArray[i]);
}

Array オブジェクトにはメソッドがいくつもあり、さまざまなメソッドを使用することで配列に要素を追加したり配列から要素を削除したりすることができます。それらのメソッドには、poppushshiftunshift などがあります。pop メソッドと shift メソッドはどちらも、配列から要素を削除します。pop メソッドは配列の最後の要素を削除し、その削除した要素を返しますが、shift メソッドは配列の最初の要素を削除し、その削除した要素を返します。これとは逆の機能を push メソッドと unshift メソッドによって実現することができます。push メソッドと unshift メソッドは配列に要素を追加します。push メソッドは配列の最後に新しい要素を追加し、追加後の配列の長さを返しますが、unshift メソッドは配列の先頭に要素を追加し、追加後の配列の長さを返します。

JavaScript には配列をソートするためのメソッドが 2 つあり、そのうちの 1 つは実際に sort という名前のメソッドです。もう 1 つは reverse です。sort メソッドは、オプションの sort 関数に基づいて配列をソートするという点で複雑です。sort 関数は開発者が作成する任意のカスタム関数です。reverse メソッドは sort メソッドほど複雑ではありませんが、配列の要素の順序を逆にすることで要素の順序を変更します。

配列を扱う際にはインデックスが重要です。配列のすべての要素はインデックスによって位置が定義されるからです。インデックスを基に文字列を変更できるメソッドとして、slicesplice の 2 つがあります。slice メソッドは、1 つのインデックス、または開始インデックスと終了インデックスの組み合わせをパラメーターとして受け付け、引数を基に配列の一部を抽出し、新しい配列として返します。splice メソッドには、パラメーターとして indexlength、任意の個数の element があります。splice メソッドは指定のインデックスを基に配列に要素を追加したり、指定のインデックスを基に配列から要素を削除したり、あるいは指定のインデックスを基に配列の要素を置き換えたりします。また、一致する値のインデックスを返す indexOf メソッドもあります。そしてこのインデックスを使用して配列を slice または splice で処理することができます。

どのようなプログラミング言語であれ、優れたコードを作成するための鍵は、適切に体系立てられたコードを作成することです。JavaScript の Array オブジェクトのさまざまなメソッドを見るとわかるように、JavaScript の Array オブジェクトはデータを体系立てて複雑な機能を実現するための強力な手段です。


Math

JavaScript の Math オブジェクトは数学関数を実行するために使われます。Math オブジェクトをインスタンス化することはできず、単純に Math オブジェクトをそのまま使用し、何もインスタンス化せずに Math オブジェクトからプロパティーやメソッドを呼び出します。

var pi = Math.PI;

Math オブジェクトには数多くのプロパティーやメソッドがあり、それらのプロパティーやメソッドによって JavaScript で数学関数を利用できるようになります。Math のプロパティーはすべて読み取り専用の定数であり、以下のようなものがあります。

  • E
  • LN2
  • LN10
  • LOG2E
  • LOG10E
  • PI
  • SQRT1_2
  • SQRT2

E プロパティーは自然対数の底の値、つまりオイラー数を返します。この値はレオンハルト・オイラー (Leonhard Euler) にちなんで名付けられた一意の実数です。E プロパティーを呼び出すと、2.718281828459045 という数値が返されます。その他に自然対数を返すプロパティーとして、LN2LN10 の 2 つがあります。LN2 プロパティーは 2 の自然対数の値を返し、LN10 プロパティーは 10 の自然対数の値を返します。LOG2E プロパティーと LOG10E プロパティーを使用すると、2 または 10 を底とする E の対数が返されます。LOG2E を呼び出した場合の結果は 1.4426950408889633 であり、LOG10E を呼び出した場合の結果は 0.4342944819032518 です。これらのプロパティーはめったに使用しないかもしれませんが、計算プログラムなど、数学を多用するプロジェクトを構築する場合はもちろん別です。ただし PI と平方根は、それらのプロパティーよりも少し一般的です。PI メソッドは円の直径に対する円周の比を返します。平方根の値を返すプロパティーには SQRT1_2SQRT2 の 2 つがあります。SQRT1_2 は 0.5 の平方根を返し、SQRT2 は 2 の平方根を返します。

これらのプロパティーの他に、ある数字のさまざまな値を返すメソッドがいくつかあります。これらのメソッドはそれぞれ数値を受け付け、メソッドの名前に基づく値を返します。残念ながら、以下のようにメソッドの名前を見てもその内容が自明なわけではありません。

  • abs. 数字の絶対値
  • acos. アークコサイン
  • asin. アークサイン
  • atan. アークタンジェント
  • atan2. 複数の数のアークタンジェント
  • cos. コサイン
  • exp. 指数
  • log. ある数の自然対数
  • pow. x の y 乗の値
  • sin. サイン
  • sqrt. 平方根
  • tan. 角度のタンジェント

数字を丸めるために JavaScript で使用できるメソッドは、ceilfloorround の 3 つです。ceil メソッドは数字を切り上げた値を返します。このメソッドは最も近い整数に数字を切り上げる必要がある場合に便利です。floor メソッドの機能は ceil と逆であり、数字を切り下げた値を返します。このメソッドは最も近い整数に数字を切り下げる必要がある場合に便利です。round メソッドは通常の四捨五入の機能を提供し、既存の小数点を基に数字を切り上げ、または切り下げます。

Math オブジェクトに含まれる最後のメソッドが maxminrandom の 3 つです。max メソッドは複数の数値の引数を受け付け、最大の値を返します。min メソッドは複数の数値の引数を受け付け、最小の値を返します。これらのメソッドは数値を値として持つ変数を比較する場合に便利であり、どんな数値なのか事前にわからない場合には特に便利です。random メソッドを使用すると、0 と 1 の間のランダムな数字が返されます。このメソッドは、Web サイトのホームページにランダムな画像を表示する場合や、画像のファイル・パスを含む配列のインデックスとして使用されるランダムな数字を返す場合など、さまざまな目的に使用することができます。そして配列から選択されたランダムな画像ファイル・パスを使用することで、その画像を HTML の <img> タグに書き込むことができます。


まとめ

JavaScript に用意されたプロパティーやメソッドは JavaScript で実現可能な機能の出発点にすぎず、皆さんの想像力次第で任意のカスタム機能を作成することができます。皆さんの想像力に制限はないように、皆さんが作成するコードにも制限はありません。JavaScript は柔軟な言語であり、そのため悪評を受けることもありますが、良い面として、JavaScript を使用することによって素早く創造的にコードを作成することができます。JavaScript のオブジェクトについて、また JavaScript 言語を使用して独自のカスタム・オブジェクトを作成する方法をさらに学ぶために、必ず「参考文献」セクションをチェックしてください。

参考文献

学ぶために

製品や技術を入手するために

  • IBM のソフトウェアを無料で試してみてください。試用版をダウンロードすることも、オンライン評価版にログインすることも、Sandbox 環境で製品を操作することも、クラウドを介して IBM 製品にアクセスすることもできます。100 を超える IBM 製品の評価版のなかから選ぶことができます。

議論するために

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Web development
ArticleID=756766
ArticleTitle=JavaScript の組み込みオブジェクトを理解する
publish-date=09162011