タグ

ブックマーク / qiita.com/raccy (3)

  • 関数宣言 vs 関数式 | ES2015+

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? JavaScriptで関数を定義する方法として、関数宣言(function declaration)と関数式(function expression)の二つ1があります。記事によっては片方を推奨する場合がありますが、実際の主張はバラバラでは無いかという印象です。ここにアロー関数(arrow function)を加えて、ジェネレーター、非同期(async)、classのメソッドなども考えながら考察していきたいと思います。 話を始めるにあたって、古いJavaScriptの仕様を考慮から外し、下記の構成を前提にします。 仕様はES2015+と

    関数宣言 vs 関数式 | ES2015+
  • JavaScriptから即時関数を排除する - Qiita

    即時関数は関数式で関数を作ったら、即時に実行する関数のことです1。JavaScriptでは有名なテクニックの一つですが、他の言語ではほとんど見かけません。まず始めに、なぜ即時関数が必要だったのかを説明し、そこからいかにして即時関数を取り除くかを考えます。 JavaScriptに即時関数が必要な理由 ES52以前のJavaScriptには次のような問題がありました。 グローバルスコープか関数スコープの変数しかない。 モジュールベースではない。 厳格モードへの切り替えが単なる文字列に過ぎない。 これを踏まえて、即時関数を使わざるを得ないところを見ていきます。 1. スクリプト全体を即時関数で囲む どんなプログラミング言語であれ、一つのファイルに全てを書いていくことは現実的ではありません。いずれJavaScriptを複数のファイルに分割して書いていく必要があるでしょう。そのとき、グローバル汚染が

    JavaScriptから即時関数を排除する - Qiita
  • JavaScript初級者のためのコーディングガイド - Qiita

    JavaScriptは大変難しい言語です。Rubyの難易度を2、Cの難易度を5、C++の難易度を8にすると、JavaScriptの難易度は12ぐらいあると思います。このコーディングガイドはそんなJavaScriptの深みに嵌まらないようにするためのJavaScriptの書き方を規定したものです。初級者1のための物ですので、わかってやっている人に好きにやってください。 このコーディングガイドは絶対に従わなければならないものではありません。私は一切強制はしませんし、初級者が従わなければならないという義務もありません。採用するしないはみなさんの自由です。 禁止編 JavaScriptには安易に使用してはいけない機能があります。下記の機能は、**それぞれの機能を使っても良い、または、使うべきであるという理由を説明できない限り、**使用してはいけません。 ==、!= ==と!=を使用してはいけません

    JavaScript初級者のためのコーディングガイド - Qiita
    clavier
    clavier 2017/01/03
  • 1