>>550
RubyはJSと違ってグローバル変数には必ず$付けなきゃいけないから、
「ローカル変数のつもりで代入したらグローバル変数だった」というのがまずありえない
だから変数宣言がなくても問題ないんだよ
JSのvarってブロックの中で使ってもスコープはメソッド全体になってしまうクソ仕様だから、
varの有無は「ローカル変数か、より広域な変数か」を指定する以上の意味はないので
Rubyの変数名で上記2つを区別する方式に比べてJSのvarが何ら安全性に勝るということはない