専門外分野のメモ

JavaScriptに関するメモ

高速化について
  • 重いスクリプトの<script>要素は、<head>要素内でなく、<body>要素内末尾に書いた方がページの表示が速い。
  • JS MinifierとかYUI Compressorとかでコードの圧縮(コメントやら空白やら改行を除去)すると読み込み時間短縮。
  • evalは処理コスト高い。たいていの場合evalは使わなくて済むはず。
  • 例外は処理コスト高い。ビジネスロジックでの入力値チェック例外は利用せず、if文で処理したほうが速い。
即時関数で変数名の衝突を避ける
(function(){
    ほげほげ
}).call(this);

みたいな記述。単に ほげほげ と書けばいいだけのように見えるが、こうすることで「ほげほげ」内で定義される変数はローカル変数となり、グローバル変数の名前の衝突を避けることができる。

関数型言語っぽい性格
  • 関数を変数に代入できたり、関数を関数に渡せたりする。
  • 関数リテラルが書ける。(名前のない関数をその場で書ける。)
  • クロージャの仕組みがある。(関数が書かれたスコープの変数をキャプチャできる。)
クラスが無い(無かった?)