JavaScript: Exclamation Before Function

By Xah Lee. Date: . Last updated: .

What does that !function mean?

This:

!function(param){body}(args)

It is equivalent to this:

(function(param){body})(args)

It means, define a function expression, and evaluate it right there.

The exclamation is the boolean β€œnot” operator. γ€”see JS: Boolean Operators〕

The exclamation forces what follows into a expression.

People do this hack to save one character worth of source code file size.