| CARVIEW |
JavaScript
מתוך ויקיפדיה, האנציקלופדיה החופשית
JavaScript היא שפת תסריט מונחית עצמים. היא ידועה בעיקר כשפה המוטבעת בדפי HTML על מנת להציג דפים דינמיים, שמשולבת בהם תוכנה. קוד ה-JavaScript שמשולב בדף HTML מבוצע על ידי הדפדפן. JavaScript נוחה מאוד לעבודה עם ה-DOM ולתפעול DHTML.
השפה נוצרה על ידי חברת נטסקייפ בשנת 1995, ויושמה לראשונה בדפדפן נטסקייפ 2.0. הגרסה הייתה JavaScript 1.0. בנוסף לכתיבת תסריטים בצד הלקוח (בדפדפן) מאפשרת JavaScript כתיבת תסריטים גם בצד השרת, לתפעול בשרת אינטרנט. מבחינת שפה, וגם מבחינת התחביר שלה, מזכירה JavaScript את שפת ActionScript שמיוחדת לפלאש. גרסה תקנית של השפה קרויה ECMAScript.
חברת מיקרוסופט יצאה בשפה מתחרה, VBScript, להפעלה בדפדפן, אך לא הצליחה ביעד זה (היא הצליחה יותר בשימושים אחרים של השפה, כולל כתיבת תסריטים בצד השרת - ASP). בנוסף יצאה מיקרוסופט עם גרסה משלה של שפת JavaScript, והיא קרויה JScript. דבר זה גורם עד היום לבעיות רבות בקרב מפתחי האינטרנט, בין אם בגלל מפתחים המעלימים עין מהעובדה שהם מתכנתים ב־JScript בלבד, ומתעלמים מדפדפנים אחרים המפענחים את JavaScript הרגילה – ובין בגלל מפתחי אתרים הסובלים לשווא בהתגברות על חוסר התמיכה של הדפדפן אינטרנט אקספלורר של מיקרוסופט בחלקים תקניים מ־JavaScript.
תוכן עניינים |
[עריכה] דוגמה לתוכנית JavaScript
התוכנית המופיעה להלן כתובה בשפת JavaScript, והיא בודקת האם מספר שהועבר אליה הוא מספר ראשוני. הסימן "//" מציין שהטקסט שמימינו אינו חלק משפת התכנות, אלא הוא הערה שמטרתה להסביר את התוכנית למתכנת הקורא אותה. התוכנית מחולקת לשתי פונקציות, האחת בודקת האם מספר נתון הוא ראשוני, והשנייה מטפלת בדיאלוג עם המשתמש: קבלת המספר לבדיקה (קלט) והצגת תוצאות הבדיקה (פלט).
<input type="text" id="primetest" value="" /> <input type="button" onclick="communicate();" value="Check" /> <script type="text/javascript"> function check(n) { // Check if the number n is prime. if (n <= 3) return 0; if (n%2 == 0) // is n divisible by 2? return 2; if (n%3 == 0) // is n divisible by 3? return 3; var sr = Math.sqrt(n); // try to divide the checked number by all numbers till its square root. for (var i=6; i<=sr; i+=6) { if (n%(i-1) == 0) // is n divisible by i-1? return i-1; if (n%(i+1) == 0) // is n divisible by i+1? return i+1; } return 0; // n is a prime, 0 returns. } // End of check function. function communicate() { // communicate with the user. var i; // the checked number. var factor; // if the checked number is not a prime, this is its first factor. i = document.getElementById("primetest").value; // get checked number, using DOM. // it is a valid input? if ( isNaN(i) || (i <= 0) || (Math.floor(i) != i) ) alert("The checked object should be a whole positive number"); else { factor = check(i); if (factor == 0) alert(i + " is a prime"); else alert(i + " is not a prime, " + i + "=" + i/factor +"x"+ factor); } } // End of communication function </script>
[עריכה] אבטחה בתוכניות JavaScript
בתור שפת צד לקוח שמריצה פקודות על גבי הדפדפן, נוצרו נסיונות רבים לגניבת מידע אישי על ידי שימוש ב-XSS. אנשים רבים אינם מבינים שהדפדפן שברשותם הוא בעצם מפרש פקודות ומריצן, ואינם מתגוננים עם כלים מתאימים. בעקבות זאת, נוצרו כלים שמשמשים לאבטחה נגד XSS וקוד זדוני כמו ההרחבה noscript לדפדפן מוזילה פיירפוקס.
[עריכה] javascript manipulation
ניתן להזריק ולהריץ קוד שלא מוזכר כלל בקוד מקור, בכל דף אינטרנט שמופיע בדפדפן. שיטה זו נקראת javascript manipulation. ב-javascript manipulation מכניסים את פקודות הסקריפט בשורת הכתובת של הדפדפן, ולרוב הוא מיועד להשפיע על ה-DOM. דוגמה:
javascript: alert(document.cookie);
בדוגמה זו נקפיץ באמצעות הפקודה alert תיבת הודעה עם העוגיות ששמורות במחשב לדף זה.
קישור למאמר שמלמד ומדגים את שיטות העבודה, מופיע למטה בקישורים חיצוניים.
[עריכה] ייבוא קובצי JS
ניתן גם לייבא את הסקריפט מתוך קובץ, במקום לכתוב הכל בדף HTML, באמצעות הפרמטר src (קיצור של source) בתגית script. דוגמה:
<script type="text/javascript" src="filename.js"></script>
כאשר filename.js הוא קובץ ה .js אליו מפנים.
קובץ ה-.js מכיל בעצם את כל הפקודות המופיעות בתוך התגית <script>.
[עריכה] ראו גם
[עריכה] קישורים חיצוניים
| מיזמי קרן ויקימדיה |
|---|
- JavaScript Manipulation
- "המדריך לבניית אתרים בעברית"
- JavaScript לא פולשני מידע טכני
- W3Schools - אתר ללימוד שפות תכנות-אינטרנט רבות. (באנגלית)
כלים אישיים
דף זה בשפות אחרות
- English
- Afrikaans
- العربية
- Žemaitėška
- Беларуская
- Беларуская (тарашкевіца)
- Български
- ᨅᨔ ᨕᨘᨁᨗ
- Català
- Česky
- Чӑвашла
- Dansk
- Deutsch
- Ελληνικά
- Esperanto
- Español
- Eesti
- Euskara
- فارسی
- Suomi
- Français
- Galego
- हिन्दी
- Hrvatski
- Magyar
- Interlingua
- Bahasa Indonesia
- Íslenska
- Italiano
- 日本語
- Basa Jawa
- ქართული
- ភាសាខ្មែរ
- 한국어
- Lietuvių
- Latviešu
- Македонски
- മലയാളം
- Монгол
- Bahasa Melayu
- مازِرونی
- Nederlands
- Norsk (bokmål)
- Polski
- Português
- Română
- Русский
- Саха тыла
- Simple English
- Slovenčina
- Slovenščina
- Shqip
- Српски / Srpski
- Svenska
- தமிழ்
- Тоҷикӣ
- ไทย
- Türkçe
- Українська
- Tiếng Việt
- 中文
- 粵語
- מקור: https://he.wikipedia.org/wiki/JavaScript
שונה לאחרונה ב־19:15, 24 ביוני 2010. - הטקסט מוגש בכפוף לרישיון CC ייחוס-שיתוף זהה 3.0; פרטי הרישוי של התמונות מופיעים בעמודי התמונות. ראו תנאי שימוש לפרטים נוספים.