Ergebnis 1 bis 2 von 2
  1. #1
    aenima22 ist offline Grünschnabel
    registriert
    24-04-2017
    Beiträge
    1

    Sehr einfaches Script: Bitte um Erklärung

    Hallo zusammen,

    Ich bin leider ziemlich Anfänger in Javascript. Das Problem ist, dass ich mir aktuell relativ viel darüber durchlese, aber die einzige Möglichkeit, wirklich zu lernen, ist sich Übungsaufgaben auszudenken.
    Frustrierend wirds allerdings, wenn man schon relativ früh scheitert und nicht wirklich versteht, weshalb. Mir ist das an dieser Stelle passiert und ich fürchte, ich komme nicht weiter / lerne nicht dazu, wenn ich hier nicht meine Anfängerfrage abladen kann und eine Erklärung dazu bekomme.

    Ganz simpel: Ich möchte ein Array (zahlen) mit Zahlen (von 0 bis 999) füllen. Das versuche ich mit einer For-Schleife zu bewerkstelligen. Das zweite Array (MyArray) dient nur als Hilfsmittel für die for-Schleife, vielleicht braucht man das gar nicht. Jedenfalls möchte ich mir dann über console.log das Array ausgeben lassen, um zu überprüfen, ob es nun mit den Zahlen gefüllt ist. ... und bereits dort scheitert es, die Konsole hat sich offensichtlich mit 1000 Werten gefüllt, aber diese sind alle "undefined". Warum verstehe ich nicht, da ich das Array als globale Variable angelegt und eindeutig als Array typisiert habe (die Typisierung sollte nichtmal notwendig sein, oder?).

    So sieht das aus:
    Code:
    <script>
            let zahlen = [];
            let MyArray = [];
            let i = 0;
    
              for (let i = 0; i < 1000; i++) {
                zahlen.push(MyArray[i]);
              }
              console.log(zahlen);
     </script>

    Und das sagt die Konsole:
    Array [ undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, 990 weitere… ]

    Vielen Dank schonmal für (hoffentlich) hilfreiche Beiträge.
    Geändert von kkapsner (24-04-2017 um 22:16 Uhr) Grund: CODE-Tags

  2. #2
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.520

    AW: Sehr einfaches Script: Bitte um Erklärung

    Zitat Zitat von aenima22 Beitrag anzeigen
    Das zweite Array (MyArray) dient nur als Hilfsmittel für die for-Schleife, vielleicht braucht man das gar nicht.
    Nicht nur braucht man das nicht, es erzeugt auch dein Problem.

    Zitat Zitat von aenima22 Beitrag anzeigen
    globale Variable
    Eigentlich keine gute Idee, eigentlich solltest du auch schon bei Übungen darauf achten, diese zu vermeiden.

    Zitat Zitat von aenima22 Beitrag anzeigen
    eindeutig als Array typisiert
    Keine Ahnung, was du damit meinst. In JS gibt es keine typisierten Variablen.

    Zitat Zitat von aenima22 Beitrag anzeigen
    die Typisierung sollte nichtmal notwendig sein, oder?
    Wenn mit der Typisierung die Zuweisung eines leeren Arrays zu der Variablen meinst, dann ist das schon nötig. Du musst der Variable ja sagen, was sie ist.

    Zitat Zitat von aenima22 Beitrag anzeigen
    zahlen.push(MyArray[i]);
    Und hier ist der Hund begraben. Wie kommst du auf dieses Konstrukt? MyArray hat doch auch gar keinen Inhalt und deswegen auch keine Einträge, die dann als undefined zurückgegeben werden. Es muss zahle.push(i); heißen.

    PS: Verwende doch bitte das nächste Mal CODE-Tags. Dieses mal hab' ich diese für dich nachgetragen.

Ähnliche Themen

  1. [SCRIPTSUCHE] Einfaches Webcam/Wettercam History Script
    Von DaHoff im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 07-11-2014, 14:13
  2. Einfaches Rechen Script
    Von fewodunkel im Forum JavaScript
    Antworten: 1
    Letzter Beitrag: 11-01-2009, 18:54
  3. einfaches dropdown script
    Von tmaniacr im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 12-10-2006, 15:06
  4. suche einfaches script
    Von sandy-flower im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 12-06-2005, 10:39
  5. Bitte schnell helfen, sehr wichtig!!
    Von jsboy136 im Forum Windows
    Antworten: 4
    Letzter Beitrag: 11-05-2001, 19:57

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •