リビジョンの比較

JavaScript 「再」入門

リビジョン 44312:

リビジョン 44312 (編集者: yyss / 編集日時:

リビジョン 44313:

リビジョン 44313 (編集者: Yuichirou / 編集日時:

タイトル:
A re-introduction to JavaScript
A re-introduction to JavaScript
URL スラッグ:
JavaScript/A_re-introduction_to_JavaScript
JavaScript/A_re-introduction_to_JavaScript
タグ:
JavaScript
JavaScript
内容:

リビジョン 44312
リビジョン 44313
n10    <h2 name=".E5.B0.8E.E5.85.A5">n10    <h2 id=".E5.B0.8E.E5.85.A5" name=".E5.B0.8E.E5.85.A5">
n14      なぜ{{ 原語併記("「再」紹介", "re-introduction") }}のか?なぜなら <a href="/n14      なぜ{{ 原語併記("「再」紹介", "re-introduction") }}するのか? なぜなら <a href=
>ja/JavaScript" title="ja/JavaScript">JavaScript</a> は<a class="ex>"/ja/JavaScript" title="ja/JavaScript">JavaScript</a> は<a class="
>ternal" href="http://javascript.crockford.com/javascript.html">世界>external" href="http://javascript.crockford.com/javascript.html">
>で最も誤解されたプログラミング言語</a>{{ 訳注("<a class='\"external\"' href='/"http:>世界で最も誤解されたプログラミング言語</a>{{ 訳注("<a class='\"external\"' href='/"htt
>//d.hatena.ne.jp/brazil/20050829/1125321936/"'>日本語訳</a>") }}であると言>p://d.hatena.ne.jp/brazil/20050829/1125321936/"'>日本語訳</a>") }}である
>える合理的な理由があるからです。しばしばおもちゃだと馬鹿にされながら、しかしその人を欺くような単純さの下に、強力な言語機能が隠され>と言える合理的な理由があるからです。しばしばおもちゃだと馬鹿にされながら、しかしその人を欺くような単純さの下に、強力な言語機能が隠
>ているのです。2005 年は数々の高い注目を集める JavaScript アプリケーションが発表され、この技術の深い知識がどんなウ>されているのです。2005 年は数々の高い注目を集める JavaScript アプリケーションが発表され、この技術の深い知識がどん
>ェブ開発者にとっても重要なスキルだということが示されました。>なウェブ開発者にとっても重要なスキルだということが示されました。
n20      Microsoft はその数か月後、IE3 とともに JScript というほとんど互換性のある言語をリリースしましたn20      Microsoft はその数か月後、IE3 とともに JScript というほとんど互換性のある言語をリリースしました
>。Netscape はこの言語をヨーロッパの標準化団体 <a class="external" href="http://www.>。Netscape はこの言語をヨーロッパの標準化団体 <a class="external" href="http://www.
>ecma-international.org/">Ecma International</a> に提出し、その結果 1997 年に>ecma-international.org/">Ecma International</a> に提出し、その結果 1997 年に
> <a href="/ja/ECMAScript" title="ja/ECMAScript">ECMAScript</a> とい> <a href="/ja/JavaScript/Language_Resources" title="ja/ECMAScript
>う標準の第 1 版が生まれました。この標準は重要なアップデートを受けて 1999 年に <a class="external" h>">ECMAScript</a> という標準の第 1 版が生まれました。この標準は重要なアップデートを受けて 1999 年に <a
>ref="http://www.ecma-international.org/publications/standards/Ecm> class="external" href="http://www.ecma-international.org/publica
>a-262.htm">ECMAScript 第 3 版</a>となり、その後しばらくほとんど安定してきました。言語の複雑化に関する>tions/standards/Ecma-262.htm">ECMAScript 第 3 版</a>となり、その後しばらくほとんど
>政治的な隔たりから、第 4 版は放棄されたものの、その多くのパーツは 2009 年 12 月に発行された新しい ECMAScrip>安定してきました。言語の複雑化に関する政治的な隔たりから、第 4 版は放棄されたものの、その多くのパーツは 2009 年 12 月
>t 第 5 版の基礎となりました。>に発行された新しい ECMAScript 第 5 版の基礎となりました。
n31    <h2 name=".E6.A6.82.E8.A6.81">n31    <h2 id=".E6.A6.82.E8.A6.81" name=".E6.A6.82.E8.A6.81">
n90    <h2 name=".E6.95.B0.E5.80.A4">n90    <h2 id=".E6.95.B0.E5.80.A4" name=".E6.95.B0.E5.80.A4">
n100      実のところ、整数値は 32 ビット int 型として扱われます (また、一部のブラウザの実装では保存もされます) n100      実のところ、整数値は 32 ビット int 型として扱われます (一部のブラウザの実装では実際にそのように記憶されます
>で、これはビット演算を行う際に重要なことです。詳しくは、<a class="external" href="http://www.>これはビット演算を行う際に重要なことです。詳しくは、<a class="external" href="http://www
>hunlock.com/blogs/The_Complete_Javascript_Number_Reference" title>.hunlock.com/blogs/The_Complete_Javascript_Number_Reference" titl
>="http://www.hunlock.com/blogs/The_Complete_Javascript_Number_Ref>e="http://www.hunlock.com/blogs/The_Complete_Javascript_Number_Re
>erence">The Complete JavaScript Number Reference</a> をご覧ください。>ference">The Complete JavaScript Number Reference</a> をご覧ください。
n105    <pre class="brush: js">n105    <pre class="eval">
n110      あなたは組み込みの <code><a href="/ja/JavaScript/Reference/Global_Obn110      あなたは組み込みの <code><a href="/ja/JavaScript/Reference/Global_Ob
>jects/parseInt" title="ja/Core_JavaScript_1.5_Reference/Global_Fu>jects/parseInt" title="ja/Core_JavaScript_1.5_Reference/Global_Fu
>nctions/parseInt">parseInt()</a></code> 関数を使うことで、文字列を整数に変換することができ>nctions/parseInt">parseInt()</a></code> 関数を使うことで、文字列を整数に変換することができ
>ます。この関数は省略可第 2 引数として変換の基数を取りますが、あなたは常にこの引数を与えるべきです:>ます。この関数は省略可能な第 2 引数として変換の基数を取りますが、あなたは常にこの引数を与えるべきです:
n136      同様に浮動小数点数への変換を行う、組み込みの <code><a href="/ja/JavaScript/Referen136      同様に浮動小数点数への変換を行う、組み込みの <code><a href="/ja/JavaScript/Refere
>nce/Global_Objects/parseFloat" title="ja/JavaScript/Reference/Glo>nce/Global_Objects/parseFloat" title="ja/JavaScript/Reference/Glo
>bal Objects/parseFloat">parseFloat()</a></code> 関数があります。こちらは <a h>bal Objects/parseFloat">parseFloat()</a></code> 関数があります。こちらは <a h
>ref="/ja/JavaScript/Reference/Global_Objects/parseInt" title="ja/>ref="/ja/JavaScript/Reference/Global_Objects/parseInt" title="ja/
>JavaScript/Reference/Global Objects/parseInt"><code>parseInt()</c>JavaScript/Reference/Global Objects/parseInt"><code>parseInt()</c
>ode></a> と異なり、基数は常に 10 用います。>ode></a> と異なり、基数は常に 10 用いられます。
137    </p>
138    <p>137    </p>
139      また、値を数値に変換する単項演算子 <code>+</code> もあります:138    <p>
139      また、単項演算子 <code>+</code> を使って値を数値に変換する:
n192    <h2 name=".E6.96.87.E5.AD.97.E5.88.97">n192    <h2 id=".E6.96.87.E5.AD.97.E5.88.97" name=".E6.96.87.E5.AD.97
 >.E5.88.97">
n222    <h2 name=".E3.81.9D.E3.81.AE.E4.BB.96.E3.81.AE.E5.9E.8B">n222    <h2 id=".E3.81.9D.E3.81.AE.E4.BB.96.E3.81.AE.E5.9E.8B" name="
 >.E3.81.9D.E3.81.AE.E4.BB.96.E3.81.AE.E5.9E.8B">
n256    <h2 name=".E5.A4.89.E6.95.B0">n256    <h2 id=".E5.A4.89.E6.95.B0" name=".E5.A4.89.E6.95.B0">
n275    <h2 name=".E6.BC.94.E7.AE.97.E5.AD.90">n275    <h2 id=".E6.BC.94.E7.AE.97.E5.AD.90" name=".E6.BC.94.E7.AE.97
 >.E5.AD.90">
n334    <h2 name=".E5.88.B6.E5.BE.A1.E6.A7.8B.E9.80.A0">n334    <h2 id=".E5.88.B6.E5.BE.A1.E6.A7.8B.E9.80.A0" name=".E5.88.B6
 >.E5.BE.A1.E6.A7.8B.E9.80.A0">
nn358 
n432    <h2 name=".E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83n433    <h2 id=".E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.8
>.88">>8" name=".E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.88">
n454      「名前」部は JavaScript における文字列であるのに対し、値は JavaScript のどんな値でも ― さらn455      「名前」部は JavaScript における文字列であるのに対し、値は JavaScript のどんな値でも ― さら
>なるオブジェクトでも ― 構いません。この仕様が気まぐれに複雑なデータ構造を作ることを可能にしています。>なるオブジェクトでも ― 構いません。この仕様が任意の複雑なデータ構造を作ることを可能にしています。
n486      これらもまた意味的に等価です。2 つ目の方法はプロパティの名前を文字列として与えるという利点があり、実行時に与えた内容n487      これらもまた意味的に等価です。2 つ目の方法はプロパティの名前を文字列として与えるという利点があり、つまりその名前を
>計算できることを意味します。ただ、この方法を用いると JavaScript エンジンや minifier による最適化が適用され>行時に計算できることを意味します。ただ、この方法を用いると JavaScript エンジンや minifier による最適化が適用
>なくなります。またこの方法は、<a href="/ja/JavaScript/Reference/Reserved_Words" >されなくなります。またこの方法は、<a href="/ja/JavaScript/Reference/Reserved_Words
>title="ja/Core_JavaScript_1.5_Reference/Reserved_Words">予約語</a>と同>" title="ja/Core_JavaScript_1.5_Reference/Reserved_Words">予約語</a>
>じ名前のプロパティを設定したり取得したりするのに使うことができます:>と同じ名前のプロパティを設定したり取得したりするのに使うことができます:
n517    <h2 name=".E9.85.8D.E5.88.97">n518    <h2 id=".E9.85.8D.E5.88.97" name=".E9.85.8D.E5.88.97">
n627        <code>push</code> は配列の末尾に1つ以上の要素を追加します (私たちの <code>ar{{ mn628        <code>push</code> は配列の末尾に1つ以上の要素を追加します (私たちの <code>ar[ar.
>ediawiki.external('ar.length') }}</code> 形式のように)>length]</code> 形式のように)
n645    <h2 name=".E9.96.A2.E6.95.B0">n646    <h2 id=".E9.96.A2.E6.95.B0" name=".E9.96.A2.E6.95.B0">
n658      これは基本的な関数について知るためのすべてを例示しています。JavaScript の関数は 0 以上の名前の付いた引数n659      これは基本的な関数について知るためのすべてを例示しています。JavaScript の関数は 0 以上の名前の付いた引数
>を取ることができます。関数の本体は好きなだけたくさんの文を含ませることができ、またその関数内で局所的な変数を宣言することができます>を取ることができます。関数の本体は好きなだけたくさんの文を含ませることができ、またその関数内で局所的な変数を宣言することができます
>。<code>return</code> 文は好きな時に関数を終了し値を返すために使うことができます。もし <code>retur>。<code>return</code> 文は好きな時に関数を終了し値を返すために使うことができます。もし <code>retur
>n</code> 文が使われなかったら (あるいは値付けない空の return が使われたら) 、JavaScript は <c>n</code> 文が使われなかったら (あるいは値付けない空の return が使われたら) 、JavaScript は <c
>ode>undefined</code> を返します。>ode>undefined</code> を返します。
n789    <h2 name=".E3.82.AB.E3.82.B9.E3.82.BF.E3.83.A0.E3.82.AA.E3.83n790    <h2 id=".E3.82.AB.E3.82.B9.E3.82.BF.E3.83.A0.E3.82.AA.E3.83.9
>.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.88">>6.E3.82.B8.E3.82.A7.E3.82.AF.E3.83.88" name=".E3.82.AB.E3.82.B9.E
 >3.82.BF.E3.83.A0.E3.82.AA.E3.83.96.E3.82.B8.E3.82.A7.E3.82.AF.E3.
 >83.88">
n796      古典的なオブジェクト指向プログラミングにおいて、オブジェクトとはデータとそのデータを操作するメソッドの集まりです。Jan797      古典的なオブジェクト指向プログラミングにおいて、オブジェクトとはデータとそのデータを操作するメソッドの集まりです。Ja
>vaScript は、C++ や Java に見られる class 文を持たない、プロトタイプベースの言語です。(これは、clas>vaScript は、C++ や Java に見られる class 文を持たない、プロトタイプベースの言語です。(これは、clas
>s 文を持つ言語に慣れたプログラマを混乱させることがあります。) 代わりに、JavaScript は関数をクラスとして用います。フ>s 文を持つ言語に慣れたプログラマを混乱させることでしょう。) 代わりに、JavaScript は関数をクラスとして用います。ファ
>ァーストネームとラストネームのフィールドを持つ人物オブジェクトを考えてみましょう。その名前を表示させる方法には2種類が考えられます>ーストネームとラストネームのフィールドを持つ人物オブジェクトを考えてみましょう。その名前を表示させる方法には2種類が考えられます:
>: "first last" と "last, first" です。ここまでで論じた関数とオブジェクトを使ってみると、次のようなや> "first last" と "last, first" です。ここまでで論じた関数とオブジェクトを使ってみると、次のようなやり
>り方があります:>方があります:
n984    <h2>n985    <h2 id="内部関数">
n1008    <h2 name=".E3.82.AF.E3.83.AD.E3.83.BC.E3.82.B8.E3.83.A3">n1009    <h2 id=".E3.82.AF.E3.83.AD.E3.83.BC.E3.82.B8.E3.83.A3" name="
 >.E3.82.AF.E3.83.AD.E3.83.BC.E3.82.B8.E3.83.A3">
n1055    <h3 name=".E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82n1056    <h3 id=".E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82.A
>.AF">>F" name=".E3.83.A1.E3.83.A2.E3.83.AA.E3.83.AA.E3.83.BC.E3.82.AF">
t1134      <h2 name=".E5.8E.9F.E6.96.87.E6.83.85.E5.A0.B1">t1135      <h2 id=".E5.8E.9F.E6.96.87.E6.83.85.E5.A0.B1" name=".E5.8E.
 >9F.E6.96.87.E6.83.85.E5.A0.B1">

前に戻る