How does this structure work when the function is anonymous?
!function() { . . . }(); With a return value.. you negate that with !
var x=!function(){return false}(); console.log(x); // true double negation
var pizza='pizza'; var x=!!function(){return pizza}(); console.log(x); // true // returns true if pizza is defined, not 'pizza' // returns false if pizza is ''. demo
!false