GitBookjs-primerはじめに本書の目的この書籍の目的は、JavaScriptというプログラミング言語を学ぶことです。先頭から順番に読んでいけば、JavaScriptの文法や機能を一から学べるように書かれています。JavaScriptの文法といった書き方を学ぶことも重要ですが、実際にどのように使われているかを知ることも目的にしています。JavaScriptのコードを読んだり書いたりするには、文法の知識だけでは足りないと考えているためです。そのため、第一部:基本文法では文法だけではなく現実の利用方法について言及し、第二部:ユースケースでは小さなアプリケーションを例に現実と近い使い方を解説しています。JavaScriptは常に変化を取り入れている言語でもあり、言語自身や言語を取り巻く開発環境も変化しています。この書籍では、これらのJavaScriptを取り巻く変化に対応できる基礎を身につけていくことを目的としています。そのため、単に書き方を学ぶのではなく、なぜ動かないのかや問題の調べ方にも焦点を当てていきます。本書の目的ではないことひとつの書籍でJavaScriptのすべてを学ぶことはできません。JavaScriptを使ってできる範囲があまりにも広いためです。そのため、この書籍では取り扱わない内容(目的外)を明確にしておきます。他のプログラミング言語と比較するのが目的ではないウェブブラウザについて学ぶのが目的ではないNode.jsについて学ぶのが目的ではないJavaScriptのすべての文法や機能を網羅するのが目的ではないJavaScriptのリファレンスとなることが目的ではないJavaScriptのライブラリやフレームワークの使い方を学ぶのが目的ではないこれを読んだから何か作れるというゴールがあるわけではないこの書籍は、リファレンスのようにすべての文法や機能を網羅していくことを目的にはしていません。Docs(MDN)というすばらしいリファレンスがすでにあります。ライブラリの使い方や特定のアプリケーションの作り方を学ぶことも目的ではありません。それらについては、ライブラリのドキュメントや実在するアプリケーションから学ぶことを推奨しています。ライブラリやアプリケーションについての別の書籍をあわせて読むのもよいでしょう。この書籍は、それらのライブラリやアプリケーションが動くために利用している仕組みを理解する手助けをします。作り込まれたライブラリやアプリケーションは、一見するとまるで魔法のようにも見えます。実際には、何らかの仕組みがありその上で作られたものがライブラリやアプリケーションとして動いています。具体的な仕組み自体までは解説しませんが、そこに仕組みがあることに気づき理解する手助けをします。本書を誰が読むべきかこの書籍は、プログラミング経験のある人がJavaScriptという言語を新たに学ぶことを念頭に書かれています。そのため、この書籍で初めてプログラミング言語を学ぶという人には、少し難しい部分があります。実際にプログラムを動かして学べるように書かれているため、プログラミング初心者が挑戦してみてもよいでしょう。JavaScriptを書いたことはあるが最近のJavaScriptがよくわからないという人も、この書籍の読者対象です。2015と呼ばれる仕様の大きな変更が入りました。2015を前提としたJavaScriptの入門書であり、必要な部分では今までの書き方との違いについても触れています。そのため、新しい書き方や何が今までと違うのかわからない場合にも、この書籍は役に立ちます。この書籍は、JavaScriptの仕様に対して真剣に向き合って書かれています。入門書であるからといって、極端に省略して不正確な内容を紹介することは避けています。そのため、JavaScriptの熟練者であっても、この書籍を読むことで発見があるはずです。本書の特徴この書籍の特徴について簡単に紹介します。2015と呼ばれる仕様の大きな更新が行われた際に、JavaScriptには新しい書き方や機能が大きく増えました。今までのJavaScriptという言語とは異なるものにも見えるほどです。2015以降を前提にして一から書かれています。2015を前提としたほうがよりスッキリと学べるためです。2015をサポートしています。そのため、この書籍では一から学ぶ上で知る必要がない古い書き方は紹介していないことがあります。既存のコードを読む際には古い書き方への理解も必要になるので、頻出するケースについては紹介しています。一方で、近い未来に入るであろうJavaScriptの新しい機能については触れていません。それは未来の話であるため不確定な部分が多く、実際の使われ方も予測できないためです。この書籍は、基本を学びつつ現実のユースケースから離れすぎないことを目的としています。この書籍の文章やソースコードは、オープンソースとしてGitHubのasciidwango/js-primerで公開されています。書籍の内容がjsprimer.netというURLで公開されているため、ウェブブラウザで読めます。ウェブ版では、その場でサンプルコードを実行してJavaScriptを学べます。書籍の内容がウェブで公開されているため、書籍の内容を共有したいときにURLを貼れます。書籍の内容やサンプルコードは次のライセンスの範囲内で自由に利用できます。ライセンスこの書籍に記述されているすべてのソースコードは、MITライセンスに基づいたオープンソースソフトウェアとして提供されます。4.0)ライセンスに基づいて提供されます。どちらも、著作権表示がされていればある程度自由に利用できるライセンスとなっています。ライセンスについての詳細はライセンスファイルを参照してください。