say cheese

Jeg sad lige og legede med den her  http://www.getdeb.net/app.php?name=Cheese

trip 1trip 2trip 3trip 4

Billederne gav god mening mens jeg lavede dem ( Jeg lyttede til amped fm  )

CERN udsender nerdcore hiphop video

De fleste kender nok CERN som dem der opfandt internettet . Nu træder de også ind på nerdcore hiphop scenen med et meget relevant rap om emner som higgs feltet og opsamling af data efter partikelkollisioner!

[youtube:http://www.youtube.com/watch?v=j50ZssEojtM]

Dem der har fulgt med  i nerdcore hiphop scenen igennem årene husker nok hits som McC++’s Ascii antics  . Så var der jo selfvfølgeligt også Monzys “Kill Dash Nine “:P

[youtube:http://www.youtube.com/watch?v=Fow7iUaKrq4]

hvordan man omgår 'this' scope problemer for closures

Man kan ikke uden videre bruge ‘this’ i en indre anonym funktion der bruger information fra en ydre. (se en god beskrivelse ifbm closures i  kapitel 4 i “Javascript: the good parts” ).

Problemet kan omgåes ved at benytte “bind” fra prototypejs på flg. facon:


ComboBox.prototype.loader= function (){
if(this.dataStore[this.paramName]===undefined){
new Ajax.Request (
this.url,{
method: 'post',
asynchronous: true,
parameters: this.parameters,
onSuccess: function (transport){
var response=transport.responseText;
this.dataStore.data[this.paramName]=response.evalJSON();
this.render();
}.bind(this),
onFailure: function (transport){
alert('failed to retrieve '+this.paramName+' data');
}.bind(this)
}
}

nedarvning i javascript

Jeg har fornyligt genopfrisket hvordan man laver nedarvning i javascript . Det centrale i forståelsen af nedarvning i javascript er forståelsen at javascript er et prototype -baseret sprog og ikke et klassebaseret sprog. Her er et eksempel , der gerne skulle lave en alert-box med “I am a pig”:


function animal () {
this.name = "nothing yet";
this.legs=4;
};
tiger = new animal;
tiger.name="tiger";
pig = new animal;
pig.name="pig";

animal.prototype.classify = function (){
alert( ' I am a ' + this.name );
};
pig.classify();

Bemærk brugen af prototype her, der tilføjer en ny funktion classify, der benytter den allerede eksisterende værdi “name”.

Du kan også bruge klasser vha prototypejs som beskrevet her (Så skal du dog benytte prototype js biblioteket)