Hirdetés

Új hozzászólás Aktív témák

  • Mr. Y

    őstag

    Üdvözlet!

    Volt nemrég itt a fórumon téma, hogy a JavaScript mindössze 1 szálon fut.
    Néha ezt a tényt be is bizonyítja. Mégis érdekes, hogy ha van egy ilyen kódom:

    let value = getValue();
    function getValue() {
    return true;
    }
    myFunction(value);
    .
    .
    .
    .
    function myFunction(x) {
    //
    }

    ...akkor a console hibát dob vissza, miszerint: 'x is not definied'.

    Kérdem én: Ha 1 szálon fut, akkor követnie kellene a műveleti sorrendet (fentről lefelé). Ilyen esetben miért nem történik meg? Nyílván getValue(); nem csak egy egysoros kód, hanem egy feltételrendszer. Mégis a program az előtt futtatná myFunction(x);-et, mielőtt visszakapná value a getValue(); értékét.
    Ez az én olvasatomban azt jelentené, hogy párhuzamosan fut két function, és ha nincs visszatérő érték az egyikből addig, amíg a másik el nem jut arra a pontra, hogy használná, akkor hiba lesz az eredmény... :F

Új hozzászólás Aktív témák