| FazBrowse Wikipedia Viewer | Main Page | | |
| Viewing: https://he.wikipedia.org/wiki/JavaScript |
| Contents |
|---|
| אבטחה בתוכניות JavaScript |
| JavaScript Manipulation |
| הערות שוליים |
JavaScript (בעברית: ג'אווה סקריפט, בקיצור: JS) היא שפת תכנות המשמשת לפיתוח אתרי אינטרנט ואפליקציות. היא גם אחת מהטכנולוגיות הבסיסיות שיוצרות את האינטרנט, יחד עם HTML ו־CSS. נכון ל־2023, 98.7% מהאתרים משתמשים ב־JavaScript בצד הלקוח של האתר שלהם, לעיתים קרובות תוך שימוש בספריות חיצוניות לשם כך. לכל הדפדפנים הגדולים יש מנועי הרצה להריץ קוד JavaScript על המכשירים של המשתמשים.
JavaScript היא שפת תכנות עילית, לעיתים מתקמפלת בדיוק בזמן, שמממשת את תקן ECMAScript. יש בה טיפוסיות דינאמית, תכנות מונחה עצמים מבוסס תבניות (Prototye) ופונקציות שהן חלק טבעי מהשפה n is prime\n}\n\n// Check if the num is a prime number and return a message\nfunction checkPrime(num) { \n // validate num\n if (!Number.isInteger(num) || num <= 0)\n return \"Invalid input. The checked object should be a whole positive number\";\n\n // special case: 1 is not prime\n if (num === 1)\n return \"1 is not a prime\";\n\n // check for factors\n const factor = getFactor(num);\n if (factor)\n return `${num} is not a prime, ${num} = ${num/factor} × ${factor}`;\n else\n return `${num} is a prime`;\n}\n"}}'>// Create input and button elements constinput=document.createElement("input"); constbutton=document.createElement("button"); button.textContent="Check"; // When clicked, read input, check if prime, and show the result button.onclick=()=>alert(checkPrime(Number(input.value))); // Add elements to the page document.body.append(input,button); // Return a non-trivial factor of n if one exists, otherwise null functiongetFactor(n){ constlimit=Math.sqrt(n);// only need to check up to √n for(leti=2;i<=limit;i++){ if(n%i===0) returni;// found a factor } returnnull;// no factor found => n is prime } // Check if the num is a prime number and return a message functioncheckPrime(num){ // validate num if(!Number.isInteger(num)||num<=0) return"Invalid input. The checked object should be a whole positive number"; // special case: 1 is not prime if(num===1) return"1 is not a prime"; // check for factors constfactor=getFactor(num); if(factor) return`${num} is not a prime, ${num} = ${num/factor} × ${factor}`; else return`${num} is a prime`; }
מאחר ש-JavaScript היא שפת צד לקוח שמריצה פקודות על גבי המכשיר של המשתמש, נוצרו ניסיונות רבים לגנבת מידע אישי על ידי שימוש ב־XSS. בעקבות זאת, נוצרו כלים שמשמשים לאבטחה נגד XSS וקוד זדוני כמו התוסף noscript, וגם הדפדפנים עצמם פיתחו מנגוני הגנה נגד התקפות אפשריות.
בדפדפנים ישנים ופחות מאובטחים, ניתן להזריק ולהריץ קוד שלא מוזכר כלל בקוד מקור, בכל דף אינטרנט שמופיע בדפדפן. שיטה זו נקראת JavaScript manipulation. ב־JavaScript manipulation מכניסים את פקודות הסקריפט בשורת הכתובת של הדפדפן, ולרוב הוא מיועד להשפיע על ה־DOM. דוגמה:
כאשר filename.js הוא קובץ ה <script> ושהדפדפן יריץ.
כמו כן, קובץ JavaScipt יכול לייבא קבצים נוספים שאינם מוצהרים במסמך ה־HTML בצורתו ההתחלתית. לדוגמה:
| View original on Wikipedia | Back | FazBrowse Home |