Anfänger102025-01-15

JavaScript Einführung - Was ist JavaScript?

Lerne JavaScript von Grund auf: Was ist JavaScript, wozu braucht man es, wie bindet man es ein und erste Schritte mit console.log().

#javascript#intro#basics#console#script

JavaScript - Die Programmiersprache des Webs

JavaScript macht Webseiten interaktiv! Während HTML die Struktur und CSS das Design liefert, bringt JavaScript das Leben rein.

Was ist JavaScript?

JavaScript ist eine Programmiersprache die im Browser läuft:

Die 3 Säulen des Webs:

  • HTML = Struktur (Gerüst)
  • CSS = Design (Aussehen)
  • JavaScript = Interaktivität (Verhalten)
Beispiel: Interaktivität
<!-- HTML: Button -->
<button id="myButton">Klick mich!</button>

/* CSS: Style */
#myButton {
    padding: 10px 20px;
    background: blue;
    color: white;
}

// JavaScript: Funktion
document.getElementById('myButton').addEventListener('click', function() {
    alert('Button wurde geklickt!');
});

Wofür braucht man JavaScript?

Was du mit JavaScript machen kannst:

  1. Interaktive Elemente

    • Buttons reagieren auf Klicks
    • Formulare validieren
    • Dropdown-Menüs öffnen/schließen
  2. Dynamischer Content

    • Inhalte ohne Neuladen ändern
    • Daten von APIs laden
    • Live-Updates (Chat, Benachrichtigungen)
  3. Animationen & Effekte

    • Smooth Scrolling
    • Animierte Übergänge
    • Parallax-Effekte
  4. Single Page Applications (SPAs)

    • React, Vue, Angular
    • Keine Seitenwechsel mehr

Beispiele:

  • Facebook Feed (automatisch neue Posts)
  • Google Maps (Interaktive Karte)
  • YouTube (Video-Player)
  • Gmail (E-Mails ohne Neuladen)

📝 Quiz

Was sind die 3 Säulen des Webs?

JavaScript einbinden

3 Wege, JavaScript einzubinden:

1. Inline (im HTML-Tag)

Inline JavaScript
<!-- ❌ Nicht empfohlen! -->
<button onclick="alert('Hallo!')">Klick mich</button>

Nachteil: Vermischt HTML und JavaScript (schlecht wartbar)

2. Internal (im <script>-Tag)

Internal JavaScript
<!DOCTYPE html>
<html>
<head>
    <title>Meine Seite</title>
</head>
<body>
    <button id="myButton">Klick mich</button>

    <script>
        // JavaScript-Code hier
        document.getElementById('myButton').addEventListener('click', function() {
            alert('Button geklickt!');
        });
    </script>
</body>
</html>

Wichtig: <script> am Ende vom <body>!

3. External (externe Datei)

Am besten: Separate .js Datei

External JavaScript
<!-- HTML: index.html -->
<!DOCTYPE html>
<html>
<head>
    <title>Meine Seite</title>
</head>
<body>
    <button id="myButton">Klick mich</button>

    <!-- JavaScript einbinden -->
    <script src="script.js"></script>
</body>
</html>
JavaScript-Datei: script.js
// script.js
document.getElementById('myButton').addEventListener('click', function() {
    alert('Button geklickt!');
});

Vorteile:

  • ✅ Klare Trennung
  • ✅ Wiederverwendbar
  • ✅ Bessere Organisation
  • ✅ Caching (schneller)

📝 Quiz

Welche Methode ist die beste um JavaScript einzubinden?

Deine erste JavaScript-Zeile

console.log() - Ausgabe in der Konsole:

Erstes JavaScript
console.log('Hallo Welt!');
console.log(42);
console.log(true);

Browser-Konsole öffnen:

  • Chrome/Edge: F12 oder Strg + Shift + I
  • Firefox: F12 oder Strg + Shift + K
  • Safari: Cmd + Option + C

Kommentare in JavaScript

Notizen im Code:

Kommentare
// Einzeilige Kommentar
console.log('Hallo');  // Auch am Ende der Zeile

/*
   Mehrzeiliger
   Kommentar
*/

console.log('Welt');

Nutze Kommentare für:

  • ✅ Erklärungen
  • ✅ TODOs
  • ✅ Code temporär deaktivieren

Variablen - Werte speichern

Variablen = Container für Daten:

Variablen Basics
// Variable deklarieren
let name = 'Max';
let alter = 25;
let istStudent = true;

// Ausgeben
console.log(name);       // Max
console.log(alter);      // 25
console.log(istStudent); // true

// Verwenden
console.log('Ich heiße ' + name);
console.log('Ich bin ' + alter + ' Jahre alt');

Datentypen

Die wichtigsten Typen:

Datentypen
// String (Text)
let name = 'Max';
let nachname = "Mustermann";
let satz = `Hallo ${name}`;  // Template String

// Number (Zahl)
let alter = 25;
let preis = 19.99;
let negativ = -10;

// Boolean (Wahr/Falsch)
let istStudent = true;
let hatFuehrerschein = false;

// Undefined (nicht definiert)
let x;
console.log(x);  // undefined

// Null (bewusst leer)
let y = null;

📝 Quiz

Welcher Datentyp ist 'true'?

Einfache Operationen

Rechenoperationen
// Addition
let summe = 5 + 3;
console.log(summe);  // 8

// Subtraktion
let differenz = 10 - 4;
console.log(differenz);  // 6

// Multiplikation
let produkt = 6 * 7;
console.log(produkt);  // 42

// Division
let quotient = 20 / 5;
console.log(quotient);  // 4

// Strings verbinden
let vorname = 'Max';
let nachname = 'Mustermann';
let vollname = vorname + ' ' + nachname;
console.log(vollname);  // Max Mustermann

📝 Quiz

Was ist das Ergebnis von 10 + '5' in JavaScript?

Interaktion mit HTML

DOM (Document Object Model) manipulieren:

HTML ändern
<!-- HTML -->
<h1 id="titel">Alter Titel</h1>
<button id="btn">Ändere Titel</button>

<script>
    // Element auswählen
    let titel = document.getElementById('titel');
    let button = document.getElementById('btn');

    // Bei Klick ändern
    button.addEventListener('click', function() {
        titel.textContent = 'Neuer Titel!';
        titel.style.color = 'red';
    });
</script>

Praktisches Beispiel - Counter

Zähler-App
<!-- HTML -->
<div>
    <h2 id="count">0</h2>
    <button id="increment">+</button>
    <button id="decrement">-</button>
    <button id="reset">Reset</button>
</div>

<script>
    let count = 0;
    let countElement = document.getElementById('count');

    // Plus Button
    document.getElementById('increment').addEventListener('click', function() {
        count++;
        countElement.textContent = count;
    });

    // Minus Button
    document.getElementById('decrement').addEventListener('click', function() {
        count--;
        countElement.textContent = count;
    });

    // Reset Button
    document.getElementById('reset').addEventListener('click', function() {
        count = 0;
        countElement.textContent = count;
    });
</script>

Wichtige JavaScript-Konzepte

Was du als nächstes lernst:

  1. Variablen (let, const, var)
  2. Datentypen (String, Number, Boolean, Array, Object)
  3. Operatoren (+, -, *, /, ==, ===)
  4. Conditionals (if, else, switch)
  5. Loops (for, while, forEach)
  6. Funktionen (function, arrow functions)
  7. Arrays (Listen von Werten)
  8. Objects (Daten-Strukturen)
  9. DOM Manipulation (HTML mit JS ändern)
  10. Events (Click, Hover, Keyboard)

JavaScript vs. Andere Sprachen

JavaScript ist besonders:

| Feature | JavaScript | |---------|------------| | Läuft | Im Browser (& Node.js) | | Typ | Dynamisch typisiert | | Schwierigkeit | Anfängerfreundlich | | Verwendung | Web, Apps, Server, Games |

Vergleich:

  • Python - Backend, Data Science
  • Java - Enterprise, Android
  • JavaScript - Web, Frontend & Backend (Node.js)

Developer Tools

Browser-Tools für Entwickler:

Console nutzen
// F12 drücken, dann in Console:

console.log('Einfache Ausgabe');
console.warn('Warnung');
console.error('Fehler');
console.table([{name: 'Max', alter: 25}, {name: 'Anna', alter: 30}]);
console.clear();  // Console leeren

Best Practices

✅ DO:

  1. Script-Tag am Ende vom <body>
  2. Externe .js Dateien nutzen
  3. Aussagekräftige Namen für Variablen
  4. Kommentare für Erklärungen
  5. console.log() zum Debuggen
  6. Einrückung für Lesbarkeit

❌ DON'T:

  1. Nicht inline JavaScript im HTML
  2. Keine kryptischen Namen (x, abc, temp)
  3. Nicht ohne Semikolon (empfohlen)
  4. Keine globalen Variablen überall
  5. Nicht var nutzen (veraltet, nutze let/const)

Debugging-Tipps

Fehler finden
// 1. Console nutzen
console.log('Wert:', variable);

// 2. Fehler lesen
// Browser zeigt Zeile und Fehlertyp

// 3. Breakpoints setzen
// In DevTools → Sources → auf Zeile klicken

// 4. typeof prüfen
console.log(typeof variable);

📝 Quiz

Welches Tool ist am besten zum Debuggen in JavaScript?

Häufige Anfängerfehler

Fehler 1: Script vor HTML-Element

FALSCH:

<script>
    document.getElementById('button').addEventListener('click', ...);
    // Fehler: button existiert noch nicht!
</script>
<button id="button">Click</button>

RICHTIG:

<button id="button">Click</button>
<script>
    document.getElementById('button').addEventListener('click', ...);
</script>

Fehler 2: Groß-/Kleinschreibung

FALSCH:

let name = 'Max';
console.log(Name);  // Fehler: Name nicht definiert!

RICHTIG:

let name = 'Max';
console.log(name);  // JavaScript ist case-sensitive!

Fehler 3: Fehlende Anführungszeichen

FALSCH:

console.log(Hallo);  // Fehler: Hallo nicht definiert

RICHTIG:

console.log('Hallo');  // String braucht Anführungszeichen

📝 Quiz

Wo sollte das <script>-Tag platziert werden?

TipsAndTricks

Tipps & Tricks

Console Tricks für besseres Debugging

Nutze mehr als nur console.log():

// Variablen mit Label
const user = { name: 'Max', age: 25 };
console.log({ user });  // { user: { name: 'Max', age: 25 } }

// console.table für Arrays/Objects
const users = [
    { name: 'Max', age: 25 },
    { name: 'Anna', age: 30 }
];
console.table(users);

// console.warn und console.error
console.warn('Warnung!');
console.error('Fehler aufgetreten!');

// Zeit messen
console.time('myLoop');
for (let i = 0; i < 1000; i++) { }
console.timeEnd('myLoop');  // myLoop: 0.5ms

Template Literals statt String-Verkettung

Moderne String-Syntax für besseren Code:

const name = 'Max';
const age = 25;

// ❌ Alt: Mit +
console.log('Hallo ' + name + ', du bist ' + age + ' Jahre alt');

// ✅ Neu: Template Literals
console.log(`Hallo ${name}, du bist ${age} Jahre alt`);

// Mit Berechnungen
console.log(`In 5 Jahren bin ich ${age + 5}`);

querySelector statt getElementById

Nutze CSS-Selektoren für flexiblere Auswahl:

// ❌ Alt: Limitiert
const element = document.getElementById('myId');

// ✅ Neu: Flexibler mit CSS-Selektoren
const element = document.querySelector('#myId');
const button = document.querySelector('.btn.primary');
const firstItem = document.querySelector('ul > li:first-child');

const als Standard, let nur wenn nötig

Nutze const als Standard für besseren Code:

// ✅ const wenn Wert sich nicht ändert
const name = 'Max';
const API_URL = 'https://api.example.com';

// ✅ let nur wenn Wert sich ändert
let count = 0;
count++;

// ❌ var ist veraltet - nicht mehr nutzen!
var x = 10;  // Nicht nutzen!

📝 Quiz

Was macht console.log()?

Übungsaufgaben

Jetzt bist du dran! Löse diese Challenges um dein Wissen zu testen:

🎯

Aufgabe 1: Dein erster Button

Einfach

Erstelle einen Button der beim Klick eine Alert-Box mit 'Hallo!' anzeigt.

HTML
Live-Vorschau
🎯

Aufgabe 2: Text ändern mit Button

Einfach

Erstelle einen Button der den Text eines <h1> Elements ändert wenn man draufklickt.

HTML
Live-Vorschau
🎯

Aufgabe 3: Counter erstellen

Mittel

Erstelle einen Zähler mit + und - Buttons. Der Zähler soll bei 0 starten.

HTML
Live-Vorschau

Nächste Schritte

Du kennst jetzt:

  • ✅ Was JavaScript ist und wozu man es braucht
  • ✅ Wie man JavaScript einbindet (<script>)
  • ✅ console.log() für Ausgaben
  • ✅ Erste Variablen
  • ✅ Basis-Datentypen
  • ✅ Einfache DOM-Manipulation

Als Nächstes lernst du:

  • Variablen im Detail (let, const, var)
  • Datentypen (String, Number, Boolean)
  • Operatoren (+, -, *, /)
  • Conditionals (if, else)

Weiter so! 🚀

JavaScriptLektion 2 von 17
12% abgeschlossen
Lektion abgeschlossen!

Gut gemacht! 🎉

Du hast "JavaScript Einführung - Was ist JavaScript?" abgeschlossen

Artikel bewerten

0.0 (0 Bewertungen)

Bitte einloggen um zu bewerten