Closures: functions capture variables from outer scopes. this depends on call site: obj.method (), standalone call (undefined in strict mode, window in sloppy), bound via call/apply/bind.