Giving both a variable and a function with the same name in a single scope should be avoided. This usage is confusing and should be avoided because it will be unclear whether the named variable refers to the function or to something else. == Noncompliant Code Example ---- var fun; function fun() { } ---- == Compliant Solution ---- var fun = function fun() { } ----