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() {
}
----

