1.4 קוד js הרצאה
פרק 1: מה זה JavaScript?¶
שפת JavaScript היא שפת תכנות דינמית המאפשרת אינטראקטיביות בדפי אינטרנט.
- רצה בדפדפן (צד לקוח).
- משמשת לבניית אפליקציות ווב, משחקים, אנימציות ועוד.
שילוב קוד JavaScript¶
<!-- 1. קוד פנימי -->
<script>
console.log("שלום עולם!");
</script>
<!-- 2. קובץ חיצוני -->
<script src="script.js"></script>
<!-- 3. קוד ישיר באירוע -->
<button onclick="alert('נלחץ!')">לחץ כאן</button>
הבסיס¶
כדי להתאמן על כתיבת קוד בשפה, תוכלו לפתוח את ה״developer tools" בדפדפן שלכם.
פתחו את הדפדפן שלכם ולחצו על ״f12" או ״ctrl + shift + i".

יפתח לכם חלונית כזו, מצד ימין.
- אני משתמש בfirefox ובdark mode, אולי אצלכם העיצוב יראה קצת שונה.
למעלה יהיה לכם כל הלושניות השונות- כרגע אנחנו בלושנית הinspector, שאיתה אנחנו יכולים לראות את הhtml + css שמוצג לפנינו.
לחצו על לושנית ה"console"

כאן תוכלו לכתוב איזה קוד js שתרצו בconsole אינטרקטיבי (כמו ipython).
מעבר זריז על java script¶
שלום עולם¶
כדי להדפיס בconsole נוכל להשתמש ב:
כל ביטוי בjava script נגמר ב;
משתנים¶
כדי להציב משתנים בjava script אנחנו צריכים לכתוב את המילה השמורה ״let" ואז שם המשתנה והערך.
let age = 30; // number
let name = "דני"; // string
let isStudent = true; // boolean
let fruits = ["תפוח", "בננה"]; // array
let person = { name: "דני", age: 30 }; // object
let empty = null; // null
let notDefined; // undefined
כדי ליצור משתנה גלובלי, (לרוב לא נרצה) במקום להשתמש בlet נוכל להשתמש בvar.
כדי ליצור משתנה constant (שערכו לא משתנה) במקום בvar נשתמש בconst
תנאים¶
let hour = 14;
if (hour < 12) {
console.log("בוקר טוב!");
} else if (hour < 18) {
console.log("צהריים טובים!"); // יודפס
} else {
console.log("ערב טוב!");
}
לולאות¶
// לולאה על מערך
let fruits = ["תפוח", "בננה", "אגס"];
fruits.forEach(fruit => console.log(fruit));
// לולאת for-of
for (let fruit of fruits) {
console.log(fruit);
}
פונקציות¶
בjava script יש גם למבדות, הן נקראות ״arrow functions"
פרק 5: עבודה עם DOM¶
הDOM הוא בעצם המבנה של האתר, אפשר לחשוב על זה כמו הhtml של האתר.
נוכל לגשת לdom ולשחק איתו בקוד שלנו כך:
בחירת אלמנטים¶
// לפי id
let header = document.getElementById("header");
// לפי class (מחזיר מערך)
let items = document.querySelectorAll(".item");
// לפי תגית
let paragraphs = document.getElementsByTagName("p");
לאחר שחברנו אלמנט, נוכל לעשות איתו דברים כגון:
let title = document.querySelector("h1");
title.style.color = "blue";
document.getElementById("myText").innerText = "הטקסט השתנה!";
let newElement = document.createElement("p");
newElement.innerText = "פסקה חדשה";
document.body.appendChild(newElement);
הוספת אירועים¶
נוכל להוסיף פעולות javascript שירוצו באירועים מסויימים שקורים לאלמנטים, לדוגמה:
עכשיו כאשר מישהו ילחץ על הכפתור עם הID: "myBtn" תרוך הפונקציה alert שמקפיצה הודעה על המסך.
פרק 6: אירועים נפוצים¶
| אירוע | תיאור |
|---|---|
click |
לחיצה על אלמנט |
mouseover |
מעבר עכבר מעל אלמנט |
keydown |
לחיצה על מקלדת |
submit |
שליחת טופס |
load |
טעינת דף/תמונה |
פרק 7: Debugging עם Chrome DevTools¶
פתיחת הכלים¶
- קיצור דרך:
F12אוCtrl+Shift+I(Windows) /Cmd+Opt+I(Mac). - לחיצה ימנית → "בחינה" (Inspect).
כלים שימושיים¶
- Console
- הרצת קוד JS ישירות.
-
הצגת הודעות שגיאה.
-
Sources
- ניהול קבצי הפרויקט.
-
הגדרת breakpoints לבדיקת קוד.
-
Elements
- עריכת HTML/CSS בזמן אמת.
-
בדיקת ה-DOM.
-
Network
-
מעקב אחר בקשות לשרת (API calls).
-
Application
- ניהול cookies, localStorage.
דוגמה ל-Debugging¶
- הוספת
debugger תעצור את הריצה כאשר DevTools פתוח.
פרק 8: Fetch API¶
כמובן שנוכל לגרום לקוד הjs שלנו לעשות בקשות לapi כמו שלמדנו בקורס תכנות.
נוכל להשתמש בfetch כדי לבצע בקשת http.
בקשה פשוטה¶
fetch("https://api.example.com/data")
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error("שגיאה:", error));
שליחת POST request¶
fetch("https://api.example.com/data", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ name: "דני", age: 30 })
});
דוגמה לקוד¶
שעון דיגיטלי
function updateClock() {
let now = new Date();
document.getElementById("clock").innerText = now.toLocaleTimeString();
}
setInterval(updateClock, 1000);
סיכום¶
למדנו:
- משתנים, פונקציות, תנאים ולולאות.
- עבודה עם DOM ואירועים.
- שליפת נתונים מ-API.
- שימוש ב-DevTools לניפוי שגיאות.
המלצה: התנסו בפרויקטים קטנים כדי לחזק את ההבנה!