apply を使ってリファクタリング

id:karupanerura の書いてたコードを読んでて、面白いなーと思った。(しかし頭は混乱)
適用がしがし使ってるなら、こんなリファクタリングもできるかなと思ったのでした。

callbackを直列化してみる遊び
http://d.hatena.ne.jp/karupanerura/20120219/1329646657

  • BEFORE
     var args = [cb];
     for (var i = 0; i < arguments.length; i++) {
        args.push(arguments[i]);
     }
     next.apply(this, args);
  • AFTER
  next.apply(this, [cb].concat([].slice.call(arguments)));


ほげー。