Hirdetés

Keresés

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

  • inf3rno

    nagyúr

    válasz Jim-Y #5474 üzenetére

    1.
    Hja, meglepődtem. Leginkább a null-on... Ezt a validációs részét a js-nek már 10 éve is újra kellett volna írni szerintem. Az egész egy jó nagy katyvasz. Elég hasonló a PHP-hez ilyen téren.

    2.
    Erre mondtam, hogyha annyira a típus validálással akarsz molyolni, akkor érdemesebb TypeScriptet használni.

    Én személy szerint így oldanám meg a dolgot sima js-el:

    function doStuff (inputArray) {
    if (!(inputArray instanceof Array))
    throw new TypeError("Array required.");
    return inputArray.map(makeChange);
    }

    aszinkron esetben meg

    function doStuff (done, inputArray) {
    if (!(inputArray instanceof Array)) {
    done(new TypeError("Array required."));
    return;
    }
    done(null, inputArray.map(makeChange));
    }

    Primitíveknél is ugyanúgy jó a typescript, vagy ha nem szeretnél compile-t, akkor valóban írhatsz olyat, hogy

    if (utils.typeOf(value, String))

    és hasonlókat.

    Szvsz. nem muszáj minden esetben ennyire szigorúan típusellenőrizni. Attól függ, hogy mire fejleszted a kódot. Ha valami kisebb projekthez kell gyorsan összeszórni olyasmit, amit ránézésre átlátsz, akkor felesleges erre időt pazarolni.

    Leginkább az a hátránya ennek a nem beépített típusellenőrzésnek, hogy TDD-vel a teszt kód nagy része erre megy el, ahelyett, hogy a tényleges funkciókat tesztelné az ember.

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