ES6のArrow functionについて… #6
今日やったこと
JavaScriptのArrowFunctionの仕様についていろいろ
寝坊しました。というか二度寝しました。
React tutorialは進捗ダメですが、React tutorial内に度々出てくるArrow functionについて少々…。
基本的な文法は
function hoge(messge) { console.log(message); } //Arrow function const hoge = (message) => { console.log(messge) }
こんな感じで書き換えることができます。コレだとあまり恩恵を受けられていない感じが否めないですが、無名関数とかだと効果抜群です。
JSXでもこんな感じ。
<button className="square" onClick={() => alert('click')}>
かなりスッキリしていい感じですね。
JSXの例で気がついたのですが、どうやら、関数本体が1文しかない場合は波括弧も不要みたいですね。ES6素晴らしい。
何故React tutorialにはセミコロンがついているのか
ご存知の通り、最新のJavaScriptの仕様では文末のセミコロンは不要なのですが、React tutorialはちゃんとセミコロンがついています。Arrow function使ってることからも、互換性のためとは思えないし、何故かよくわからなかったので調べてみました。
どうやら、書き方によってはヤバイ挙動をすることがある…みたいですね。
つくづく闇深い言語だ…。
雑談
17時からバイトなので早めの更新です。
二度寝してつらい…。
でんぱ組のファンクラブ、会員証が届きました!
届いた!でんぱとう! pic.twitter.com/DUYAG597mO
— ううたろ (@uutarou10) 2017年5月20日
オタク!