Browser

Microsoft Edge(Project Spartan, Internet Explorer) 、ブラウザ周辺、Web フロントエンド開発、UI、など

Microsoft Edge まとめページ

Microsoft Edge の機能を調べてみた - アロー関数(Arrow Functions) 編

今更ですが、アロー関数のご紹介。

Build 10240 で Microsoft Edge に正式対応した JavaScript の関数を簡素に記述する機能。
現状 ChromeOperaFirefox で動作しますが、OSX / iOSSafari では動きません。
記述は C#ラムダ式に近いです。

 

サンプル:2個の引数を掛け算する

 

サンプル:関数である為、返り値を配列として渡すこともできる

 

アロー関数の注意点など
  • 引数がない場合は () が必須
  • 引数が1つしかない場合 () は省略可能
  • 関数の内容が複数の命令の場合、従来通り {} で囲む
  • 使用頻度は低いが即時実行させることもできる
  • 関数であるため返り値をオブジェクトとして返すこともできる
  • アロー関数の this の参照は関数定義時に決まる。そのためアロー関数はスコープ内の this の値を捕捉する
  • 空のアロー関数は undefined を返す

 

以下、サンプル

引数がない場合は () が必要

 

引数が1つの場合は () を省略可能

 

関数の内容が複数行の場合、従来通り {} で囲む

 

即時実行

 

オブジェクトを返す

 

アロー関数はスコープ内の this の値を捕捉する

 

余談

GitHubWebKit リポジトリにある JavaScriptCore に Arrow Functions に関する記述がある為、そのうち Safari でも実装されると思われます。

スポンサーリンク