I have some code to get calendar events and display them. The display is only updated if the events have changed, since the last call. var calendar = { events = null, display_calendar_events : function (data) { // Some display stuff... }, get_events: function() { // Get messages for calendar $.getJSON("/ajax/get-events/", function(json){ var new_events = json.data; // If events haven't changed, do nothing if (this.events === new_events) { return true; } // Events have changed. // Save new events this.events = new_events; // Display new events this.display_calendar_events(json); }); }, } I call this with: calendar.get_queued_events(); The problem is, I'm getting the error "this.display_calendar_events is not a function" (last line of code). But if I change this line to: calendar.d...