» נושאי לימוד
» נושאי לימוד
יום שישי 26 באפריל 2024
ג\'אווה סקריפט ועצמים
דף ראשי  בניית אתרים  ג'אווה סקריפט  ג\'אווה סקריפט ועצמים גרסה להדפסה

ג'אווה סקריפט ועצמים                            

הרעיון של תכנות עצמים מהווה רעיון מרכזי גם בשפת ג'אווה וגם בג'אווה סקריפט. עצמים הם קטעי קוד עצמאיים שיכולים לעבוד זה עם זה. תוכניות הנכתבות בשפות אלו יהיו מורכבות מהוראות המגדירות יחסים בין עצמים שונים, ולא מפקודות ארוכת ורציפות כמו בשפות תכנות אחרות( כיום עצמים הם חלק אינטגרלי אפילו משפת perl 5, שגרסאות קודמות שלה לא תמכו בעצמים) .

 

ג'אווה ו perl 5 הן שפות מונחית עצמים, אך ג'אווה סקריפט היא שפה מבוססת עצמים. ההבדל בין שתי סוגי השפות המוזכרות לעיל הוא שבשפה מונחית עצמים למתכנת יש אפשרות להגדיר עצמים חדשים, לעומת שפה מבוססת עצמים שבה המתכנת מחויב להשתמש בעצמים שהוגדרו מראש.

לג'אווה סקריפט יש קבוצה של עצמים המזוהים עם הדפדפן, החלונות השונים שלו ותגי  HTML שונים. יותר מזה, לחלק מהעצמים בג'אווה סקריפט יש מתודות או/ו תכונות  (methods and/or properties) שמאפשרות גישה לחלקים שונים בדף האינטרנט ע"י גישה לעצמים.ההבדל בין מתודה לתכונה הוא שמתודה היא פונקציה שפועלת על עצם מסוים, בעוד תכונה היא מידע המאפיין עצם כלשהו.


אחת המשמעויות של תכונות אלו היא שניתן לשנות חלקים מסוימים בדף האינטרנט שלך בצורה דינאמית, ללא צורך בטעינת כל הדף מהשרת.

 

העצם Navigator

לג'אווה סקריפט יש עצם הנקרא navigator שהשפה מקשרת לדפדפן האינטרנט עצמו. לעצם זה יש ארבע תכונות שונות   (properties) שמגדירות את הדפדפן הנמצא בשימוש(שם, מספר גרסא, מערכת ההפעלה וכו'). התכונות האלו נקראות : appName,appVersion,appCodeName and userAgent

 


בשפות מונחות ומבוססות עצמים הגישה לתכונה(property) של עצם(object) בד"כ נעשית ע"י סימן הנקודה (.):

 

object.property

 

לדוגמא,הגישה לתכונה appName של העצם  navigator תתבצע ע"י:


navigator.appName


בחלק הבא של העמוד השתמשנו בג'אווה סקריפט כדי לבדוק את תכונות הדפדפן בו אתה משתמש ע"מ לראות את הדף הזה והדפסנו את התוצאות :

 

 



 

 

 

נסה לצפות בדף זה משני דפדפנים שונים ע"מ לראות הבדל בתוצאות המודפסות כל פעם.

 

כעת, נציג את קוד הג'אווה סקריפט בו השתמשנו ע"מ להציג את התוצאות.

קוד הג'אווה סקריפט:

 

 <script language="Javascript">
    <!-- hide script from old browsers
    document.writeln("navigator.appName = " +
       navigator.appName + "<br>");
    document.writeln("navigator.appVersion = " +
       navigator.appVersion + "<br>");
    document.writeln("navigator.appCodeName = " +
       navigator.appCodeName + "<br>");
    document.writeln("navigator.userAgent = " +
       navigator.userAgent + "<br>");
    // done hiding-->
</script>


כמה הערות לגבי קטע הקוד:

 

1.  כל קטע הקוד תחום בתג    <script> ...</script> . כמות התגים האלו בדף אינה מוגבלת.


2. בתג הזה כתובה התכונה "language="Javascript כדי להבדיל את קטע הקוד שלנו מסקריפטים אחרים שיכולים להיכתב בשפות אחרות למשל: Microsoft VBScript .


3. קטע הקוד כולו נכתב בתור הערה ("hide script from old browsers" , "done hiding"), מכיוון שלא כל הדפדפנים "מבינים" ג'אווה סקריפט ולכן דפדפן כזה יכול היה לחשוב שכל הטקסט של הקוד הוא בעצם טקסט HTML והיה מדפיס אותו בדף האינטרנט, ולכן הקוד כתוב כהערה (לא להדפסה).


4. הפקודה בג'אווה סקריפט שמשמעותה הדפסה למסך היא: ;()document.writeln כשמה שכתוב בתוך הסוגריים הוא מה שיודפס.


5. למרות שכשרוצים להדפיס ערכים של משתנים כמו navigator.appName תוחמים את שם המשתנה במרכאות כפולות (") , הן לא מודפסות לפלט.


אתרי אינטרנט רבים משתמשים בפקודות ג'אווה סקריפט כדי להתאים את תצוגת האתר לדפדפן בו צופים בו.

 

 

 16-02-04 / 17:46  נוצר ע"י עזרא גנוט בתאריך 
 ג'אווה סקריפט - הקודםהבא - OnLoad ו OnUnLoad 
תגובות הקוראים    תגובות  -  0
דרכונט
מהי מערכת הדרכונט?
אינך מחובר, להתחברות:
דוא"ל
ססמא
נושאי לימוד
חיפוש  |  לא פועל
משלנו  |  לא פועל
גולשים מקוונים: 1