In his post The anatomy of an immediately-invoked function expression, my friend Chris Ferdinandi shows you how he writes an IIFE from scratch. Here's another way to approach it.

I start with a leading semicolon, two sets of parentheses, and a closing semicolon.


Then, I take my anonymous function:

function () {


And drop it into the first set of parentheses:

;(function () {


Boom. You're good to go!

I also opt into strict mode to make my IIFE more bulletproof:

;(function () {

"use strict";

// Your code goes here...


If you want to learn more, I recommend the following in addition to Chris' resources: