Work Journal 2013-jan-10

Javascript is hard!

or maybe just different.

Although I spend most the of morning trying to figure out have to set a global variable based on a synchronous ajax call in javascript I actually progressed a fair bit on my current project. I most of all learned that there is still really much I don’t understand and need to learn about javascript. I still don’t know why I couldn’t make it work. Maybe because a change in jQuery. I ended up using the jQuery.getJSON() and just calling all code in the callback that depended on the data I wanted to put in the global variable.

So in stead of

var globalVariable;

// Following code inside the scope of a closure:
jQuery.ajax({
	url: 'servicehost.net/ressource',
	success: function (result) { 
               globalVariable = result.relavantData; 
        },
	async: false
});
// function calls using globalVariable

</code> I ended up with

// Following code inside the scope of a closure:
jQuery.getJSON( 'servicehost.net/ressource', function (result) { 
		var localVariable = result.relavantData; 
		// loads of functioncalls that depend on localVariable
	}
});  

</code>

Probably what I ended up with is a better pattern anyway.


Work Journal – a diary on what I did work/programming related today.