1 / 15

JavaScript

JavaScript. שעור מס' 4. פונקציות ב- JS. <HTML> <HEAD> <TITLE>Functions in JavaScript</TITLE> <script language=JavaScript> function sum(x,y) { z=x+y; return z; } < / script> < / HEAD> <BODY> <script language=JavaScript> document.write(sum(5,6)); < / script> < / BODY> < / HTML>.

sonel
Download Presentation

JavaScript

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JavaScript שעור מס' 4

  2. פונקציות ב-JS <HTML> <HEAD> <TITLE>Functions in JavaScript</TITLE> <script language=JavaScript> function sum(x,y) { z=x+y; return z; } </script> </HEAD> <BODY> <script language=JavaScript> document.write(sum(5,6)); </script> </BODY> </HTML> • פונקציה הוא ביטוי מוגדר ע"י המשתמש ואשר מבצע פעולה מורכבת, עם או בלי פרמטרים. • הפונקציה מוגדרת בתוך החלק head של המסמך . • אפשר לקרוא לפונקציה מתוך חלק ה- body של המסמך וגם מחלק של ה-head . • כאשר מעונינים שהפונקציה תחזיר ערך, משתמשים בפקודת return עם משתנה שברצוננו להחזיר את ערכו.

  3. פונקציות ב-JS • דוגמה הבאה משתמשים בפונקציה ובמחרוזות על מנת ליצור אפקט של אנימציה של טקסט בתחתית המסך. • פונקציות יכולות לבצע חישובים שונים נוספים, לדוגמת חישוב עצרת.

  4. שימוש בפונקציה כפרוצדורה <HTML> <HEAD> <TITLE>Using the Function like a Procedure</TITLE> <script language=JavaScript> function bold(msg) { document.write("<b>"+msg+"</b>"); } </script> </HEAD> <BODY> <center><h1>This functon will print the message in bold face</h1></center> <script language=JavaScript> txt=prompt("Enter a message","A standard message to printed in bold"); bold(txt); </script> </BODY> </HTML> • אפשר להשתמש בפונקציה כמו פרוצדורה ז"א ללא החזרת ערך.

  5. אובייקטים (עצמים) אובייקט הוא "חבילה" של ידע, אוסף של משתנים ופונקציות. למשל: עיפרון מורכב מעופרת, עץ,ומחק בקצה ואפשר לבצע בו פונקציה של כתיבה. או למשל: כדי להגדיר "יין" אנחנו צריכים לדעת את שנת הייצור, את הכרם בו גדלו הענבים, ופרטים נוספים ממין זה. אלו הם המשתנים שלנו. הפונקציה יכולה להיות "שתייה", או "רחרוח". JavaScript מתייחס לדפי HTML כאל למשתנים, ובונה עליהם פונקציות. הנה שרטוט שנלקח מן "אובייקטים" כאלה. הוא מחלק אותם המדריך של Netscape ל JavaScript, המדגים את כוונתי:

  6. אובייקטים של דפדפן • שפת JS יכולה לתת פקודות ישירות לדפדפן. מגוון הפעולות האלה נקראים אובייקטים של הדפדפן. באחת הדוגמאות הכרנו את האובייקטים :window.setTimeoutwindow.status

  7. שימוש ב– switch ו- window.location switch(where){ case "computer science" : window.location="http://www.tikah.co.il/pascal/default.htm"; break; case "science" : window.location="http://www.tikah.co.il/eshkol/scie2001/scitechye.htm"; break; case "geography": window.location="http://www.tikah.co.il/geography/aklim/index.html" break; default : window.location="http://www.tikah.co.il/"; } • switch היא בעיקרון פקודה מטיפוס case או במילים אחרות if עם הרבה אופציות. • window.locationמאפשר פתיחת דף אחר .

  8. עצמים ושיטות (Objects and Methods) • כותב ב-JS יכול להגדיר לעצמו אובייקטים ושיטות שלהם. • בסדר כתיבת הסקריפט, רושמים בראש המסמך את הפונקציות המהוות השיטות של האובייקט, בנהן פונקציה מיוחדת היוצרת את האובייקט (constructor) ונותנת לו את שמה. ובגוף המסמך מגדירים משתנים חדשים מסוג האובייקט בעזרת פקודת new. • דוגמה הבאה מטפלת באובייקט "כרטיסי ביקור".השיטות הן :PrintCard האובייקט הוא Card שמוגדר בעזרת פונקציה (constructor) Card .

  9. עצמים ושיטות (Objects and Methods) • פונקציה Card נקראת פונקציה בונה (constructor) מגדירה את המבנה ז"א מי הם מאפיינים של אובייקט : function Card(name,address,work,home) { this.name = name; this.address = address; this.work_phone = work; this.home_phone = home; this.PrintCard = PrintCard; } • פונקציה קוראת את המאפיינים של האובייקט השוטף this . זאת מילת מפתח ויש להשתמש בה בכל פעם שמגדירים אובייקט.

  10. עצמים ושיטות (Objects and Methods) • פונקציה PrintCard שהיא שיטה של Card מגדירה את הדפסת הכרטיס. function PrintCard() { document.write("<B>Name:</B> ", this.name, "<BR>"); document.write("<B>Address:</B> ", this.address, "<BR>"); document.write("<B>Work Phone:</B> ", this.work_phone, "<BR>"); document.write("<B>Home Phone:</B> ", this.home_phone, "<HR>"); }

  11. עצמים ושיטות (Objects and Methods) • יצירת משתנה חדש מסוג אובייקט Card נעשית בעזרת פקודת new ובשימוש בפונקציה (constructor)Card sue = new Card("Sue Suthers", "123 Elm Street", "555-1234", "555-9876"); phred = new Card("Phred Madsen", "233 Oak Lane", "555-2222", "555-4444"); henry = new Card("Henry Tillman", "233 Walnut Circle", "555-1299", "555-1344");

  12. מערכים ב-.S.J מושג של מערך שונה במקצת מזה שבפסקל. הקצעת זכרון כאן איננה סטטית מאחר שלא נקבע מראש גודל המערך. יצירת מערך נעשה ע"י : numbers= new Array() מספר האיברים גדל בכל פעם שמוסיפים איבר חדש. למשל: numbers[0] =12; numbers[1] =5; אופי המספרי של המערך נקבע ע"י ההצבה הראשונה. במידה שהינו מציבים מחרוזת , המערך היה מערך של מחרוזות. מאחר שגודל המערך משתנה בהתאם הוספת איברים חדשים קיימת התכונה length המדווחת על אורך המערך: document.write(numbers.length)

  13. מערכים ב-.S.J • גם ב-.S.J הטיפול במערכים מתבצע בעזרת לולאות. בדוגמה הבאה משתמשים ב –While על מנת להציב 10 מספרים אקראיים בתוך המערך: • numbers = new Array(); i = 0; do { numbers[i] = Math.floor(100*Math.random()+1); i = i + 1; } while (i<10);

  14. לולאות while • משפט זה שונה מהידוע בפסקל. הוא מתחיל ב do וכל תוכנה של הלולאה נמצאת בין {}. סיום הלולאה נעשית בעזרת while ולאחריו את הביטוי הבוליאני בתוך סוגריים. כל עוד הביטוי אמת הלולאה ממשיכה להתבצע.

  15. מספרים אקראיים • רב הפונקציות המספריות המוכרות בפסקל ב-.S.J הן שיטות של האובייקט Math . Math.random() יוצרת מספרים אקראיים בין 0 ל-1. על מנת לקבל מספרם גדולים יותר חייבים להכפיל את תוצאה במספר מקסימלי שאליו רוצים להגיע. על מנת לקבל מספרים שלמים משתמשים בשיטה נוספת של Math המעגלת את המספר מטה – Math.floor

More Related