JavaScriptを生成するための簡易言語Coffee Scriptのワンライナー集を発見:-)。
Coffee ScriptはPythonのようにインデントでブロックを表記したり,Rubyのように[x...y]で範囲表記したり,多言語のよいところをとりつつ,簡潔に処理を掛けるということで注目が集まっています。
元エントリにあるのをいくつか紹介します。
リストにある各数値を二倍したリストを得る
Pythonのリスト内包表記に似てる。「[1..10].map (i) -> i*2」みたいにも書ける。
i * 2 for i in [1..10]
リストにある各数値の合計を得る
[1..1000].reduce (t, s) -> t + s
スコアのフィルタリング
リストの数値が60以上ならpassedというリストに,そうでなかったらfailedというリストに数値を追加する。
passed = []
failed = []
(if score > 60 then passed else failed).push score for score in [49, 58, 76, 82, 88, 90]
JSONをフェッチする
requestライブラリを使ってJSONのフェッチも簡単に。
request.get { uri:'path/to/api.json', json: true }, (err, r, body) -> results = body
ワンライナーを見るとやっぱり「スゲー」ってなって使いたくなる:-)。