関数がファーストクラスであることは、すばらしい

そういえば、google-code-prettifyをハックしてて気になったんだけど、

function PR_isIE6() {
  var isIE6 = navigator && navigator.userAgent
      && /\bMSIE 6\./.test(navigator.userAgent);
  PR_isIE6 = function () { return isIE6; }
  return isIE6;
}

このコード面白いよね。4行目だけど、一瞬なにやってるのかわからなかった。Lazy Loadingの実装テクニックのひとつということでいいのかな。

いやー、勉強になった。今後、機会があったら積極的に使って行こう。