JavaScriptにおける関数名と変数名の競合
上記の説明から、同じ名前の変数と関数が共存することは、 容易に問題を引き起こす可能性があることがわかります。
次の例では、関数 func が上書きされ、
代わりに文字列 'string' が格納されます:
function func() {
return '!';
}
func = 'string'; // 関数を持つ変数を文字列で上書き
func(); // funcは関数ではないためエラーが発生する
このような事態を防ぐためには、すべてのプログラミング言語に共通する ルールに従うべきです: 関数は動詞であり、変数は名詞であるべきです。