JavaScript: ひどいパーツと悪いパーツのまとめ

JavaScript: The Good Parts

最近JavaScriptに触れることが多かったので、
久しぶりに、この本を読みなおした。

JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス

JavaScript: The Good Parts ―「良いパーツ」によるベストプラクティス


今回はこの本の付録である、「ひどいパーツ」「悪いパーツ」の中で、
自分にとって重要そうなものをまとめた。

詳しいことや付録以外のことは書かないので、
もっと知りたい人はこの本を読むといいと思う。

Amazonのレビューでも大絶賛されている良書。
「入門書」というよりは「再入門書」という感じ。

グローバル変数を作る方法

  • 関数外に宣言
var hoge = 'foo';
  • (ブラウザなら)windowオブジェクトに宣言
window.hoge = 'foo';
  • varをつけない
hoge = 'foo';

JavaScriptにはブロックスコープがない

そのため、ほとんどの言語は変数を使う場所で宣言するのが良いが、
JavaScriptでは、すべての変数は関数の最初に定義するのが良い

Falseになる値

0
NaN
''
false
Null
undefined

関数の宣言

関数の宣言には2つの方法があるが、前者を使うことが好ましい。
詳しいことはを読んでください。

var hoge = function(){};
function hoge(){};

ブロックなしの文

{}を書かないことで、コードは少し短くなる。
しかし、

if (ok)
  ok = false
  hoge();

は、

if (ok){
  ok = false
}
hoge();

という処理になる。わかりづらい。
ブロックは常に使うようにするべきである。

typeof null

これはObjectを返す。(´;ω;`)
nullチェックは、

hoge === null

でチェックしよう。

使わないほうがいいもの

void
with 文
eval
==, !=

理由は省略。

さいごに

JQuery(系のそういうの)なしでも、
もうちょっとちゃんとJavaScript使えるようになりたいなー(´`;)