変数のスコープ

日頃 JavaScript を書かないのがたたって、変数のスコープがどこまで有効なのかわからなかった。

問題となったのは以下のコード。変数hoycatch節でも有効なのかどうか。

try {
    var hoy = "HoyHoy";
    throw "exception";
} catch (e) {
    console.log(hoy);
}

結果はというと、有効でした。

% node hoy.js
HoyHoy

試した環境は

% node -v
v0.10.33

以上、本日のメモ。