LoginSignup
3
2

More than 5 years have passed since last update.

最近のJavaScriptの書き方に関して

Posted at

ECMAScript2018(JavaScript)仕様か、第115回総会(2018年6月27日)で策定されましたね。

ECMA-262第9版 - ECMAScript®2018言語仕様
ECMA-402第5版 - ECMAScript®2018国際化API仕様書
引用元 http://ecma-international.org

2018仕様策定の概要としては

  • AsyncIteratorプロトコルと非同期ジェネレータを介して非同期の反復のサポート
  • dotAllフラグ、キャプチャグループ、Unicodeプロパティエスケープ、およびルックアヘッドアサーションの新しい正規表現機能が含まれる
  • オブジェクトプロパティのrestパラメータとspreadオペレータをサポート

最近の書き方と昔の書き方の違いについて一部メモってみました。

  • 変数の宣言
    -- var以外にlet、constが追加されている。ES6から。(昔はvarを使うしか有りませんでした。)
    varを使えば、以下の様に同名変数を宣言する事もできます。他の言語の感覚から言うと、大雑把な印象を持ってました。

    var hoge = 1;
    var hoge = 2;

    が、letを使うと、同名変数を使えないので、エラーとなります。

    'use strict'
    let hoge = 1;
    let hoge = 2;

    まともになった感が有りますね。

  • オブジェクトのコピーが楽になった。

  • 2018仕様からスプレッド演算子のサポートが可能になりました。

    const hogeObj = {...fooObj};

    一行で済ませられるようになりました。以前は、ループしながら、値を一つずつコピーしてましたが、楽になったものです。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2