デイトラ2期 DAY15 Progateで「JavaScriptⅢ」を学ぶ【30DAYSトライアル2nd】

デイトラ30DAYSトライアルの感想・体験

こんにちは、タキ(@engineeraru)です。

デイトラ2期(#30DAYSトライアル2nd)「DAY15 ProgateでJavaScriptⅢを学ぶ」について解説します。

【デイトラDAY15課題】Progateで「JavaScriptⅢ」を学ぶ

デイトラDAY15の課題は「ProgateでJavaScriptⅢを学ぶ」です。

JavaScriptの関数を学ぶ

今回は、JavaScriptの関数を学ぶ話でした。

つまずきそうなのは以下の部分ですね。

  • 関数の代入
  • スコープ

 

関数の代入

今まで定義してきたのは

var text = “hello”;

var number = 1;

のようなシンプルな構文だけでした。

 

しかし、右側に関数を代入できるということが分かりましたね。

var introduce = function(){ … };

結局の所、この文章というのは

  • 【左側】「どんな入れ物に」(データの型「var」)
  • 【左側】「なんて名前をつけて」(変数名「introduce」)
  • 【右側】「どんなものを入れる」(関数「function(){…}」)

という風に書くのだな、と理解すればOKです。

 

スコープ

スコープという概念もプログラミング言語ではよく使います。

簡単に言うと「変数が生存できる領域」みたいなもんです。

スコープを導入する(ある一定の枠の範囲のみ変数を保存する)ことで、

  • 重複(2回定義する)のを避ける ※どちらを優先するか決める
  • 不要なデータを保存しないで済む

ようになります

 

【余談】既に他の言語が分かる人向けのJavaScriptの話

余談です(既に他の言語が分かる人向けのJavaScriptの話)

まず、アロー関数はJSでよく使う表記のようです。

で、これシンタックスシュガーではなく、新たな記法のようです。

JavaScriptのアロー関数

 

ちなみに、アロー関数は無名関数の一種です。

関数には「名前」をつけるのが当たり前な言語が多いですが、JavaScriptでは、無名の関数を作ることが出来ます。

ちなみに、無名関数に似たものとして、即時関数という「関数定義」時に呼び出すものがあります。

無名関数と即時関数

 

今日もそんなに語れることなかったですが、こんなところでDAY15の解説終わりです。

完全に新しい知識なので、無理せず、とりあえず覚えていくのがオススメです。