apply and call

ישנם שתי מטודות שמגיעות קומפלט עם כל אובייקט FUNCTION ועוזרות בהעברת נתונים לתוכן.

במאמר הבא יש הסבר פשוט ויפה שמסביר איך להשתמש בכל אחת ואיך לצור DELEGATE (שליח או אובייקט של פונקציה עם הדאטה שלה)

הכותב:
K. Scott Allen

מומלץ

שמירה מטעינה כפולה

להלן קטע קוד שכתוב בשיטת MODULE 
הוא מדגים איך אני יוצר NAMESPACE מחבר אליו CLASS וגם אם הוא נטען פעמיים, התנאי
OBR.ping || function ()
שומר עליו שלא ייצר טעינה נוספת של המודל PING 

OBR = {};
alert(OBR.ping);// undefined
OBR.ping = ( OBR.ping || function () {
  alert("im in!");
  var my = {};
  my.insertPing = function() {
    alert("ping");
  }
  return my;    
}());

OBR.ping = ( OBR.ping || function () {
  alert("im in2 !");
  var my = {};
  my.insertPing = function() {
    alert("ping2");
  }
  return my;    
}());
OBR.ping.insertPing(); /result "im in!" and  "ping"
שיפור ביצועים של JAVASCRIPT הוא עניין רציני שדורש הרבה נסיון, להלן מצגות מעולות המציגות את עיקרי הפעולות על מנת לשפר את הביצועים. 

מצגת של YUI
מצגת של google closure

חוץ מזה אני מתחיל לשפר את דרך העבודה שלי מול Google Closure Compiler  על מנת לכווץ את הקוד שלי. פרטים בהמשך אחלו לי הצלחה.