【JS】アロー関数
JS逆引きレシピ本、118(P191)。
アロー関数についても、なんとなく避けて通ってきた。ここで整理しておきたい。
っていうか、「アロー関数」という名前だったことを初めて知った。
次の関数は、縦横サイズを引数として渡すと面積を返してくれるものである。
function getSquareArea(width, height) { return width * height };
これを、アロー関数を使って書くと、こうなる。
let getSquareArea = (width, height) => { return width * height; };
これだけだと、わざわざ書き換える理由がよくわからないが、上記構文ならもっとシンプルに書ける。
let getSquareArea = (width, height) => width * height;
この書き方は知らなかったが、これは、かなりシンプル。
関数の中身が一文の場合に限られるが、ここまで省略して書ければ、可読性も高まる気がする。
また、上記は四角形の面積を求める関数だったが、これが以下のような円の面積を求めるものだった場合、
let getCircleArea = (radius) => { return radius * radius * Math.PI; };
以下のように書き換えることができる。
let getCircleArea = radius => radius * radius * Math.PI;
要は、引数が一個しかない場合、引数の()を省略できる。
ただ……個人的には、どうかなぁ。
ここまで省略しちゃうと、イコールで三項を結んでいるような書き方に見えてしまうので、二項目が引数だと、読んでもぱっと理解できない。
可読性を高めるためにシンプルに書こうとして、逆に可読性を損ねている気がする。