JSLint does not like this code saying \"\'b\' was used before it was defined\"
var a = function () { b(); }, b = function () { alert
In C it is what we call forward declaration, looks like it could be the same in JSLint. JSLint is aware of b and at that point b could be a function for all it cares (but if it isn't a function, it would throw an error of course)