JavaScript Trick: 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.

BUY Ξ£JS JavaScript in Depth