Autor Zpráva
alt64
Profil *
Ahoj, rad bych se zeptal na toto:

vzdy jsem zapisoval fce. v JS klasicky jako function nazevfce (params)
{telo fce.}
ale cim dal casteji vydam i takovyto zapis

var nejakynazev= function() {
    document.getElementById("platform").innerHTML = device.platform;
    document.getElementById("version").innerHTML = device.version;
    document.getElementById("uuid").innerHTML = device.uuid;
    document.getElementById("name").innerHTML = device.name;
    document.getElementById("width").innerHTML = screen.width;
    document.getElementById("height").innerHTML = screen.height;
    document.getElementById("colorDepth").innerHTML = screen.colorDepth;
};


Jaky j v nich rozdil, v cem je ktery lepsi a proc?

Diky moc za vysvetleni
Chamurappi
Profil
Reaguji na alta64:
Prakticky jediný rozdíl je v tom, že funkce zapsaná klasicky vznikne před začátkem vyhodnocování bloku skriptu, takže je možné ji zavolat kdykoliv, zatímco při přiřazení funkce ji jde zavolat až po přiřazení (a do proměnné může být tak či tak kdykoliv přiřazena i jiná funkce…).
alt64
Profil *
Chamurappi:
zatímco při přiřazení funkce ji jde zavolat až po přiřazení


To jsme uplne nepochopil jak bylo mysleno, co je tedy lepsi?
Chamurappi
Profil
Reaguji na alta64:
x();  // vrátí 42
function x() { return 42; }

y();  // vyvolá výjimku, protože y je teď undefined
var y = function() { return 42; };

co je tedy lepsi?
Proč musí být jeden z těch zápisů universálně lepší?
alt64
Profil *
Diky moc za vysvetleni
_es
Profil
Chamurappi:
do proměnné může být tak či tak kdykoliv přiřazena i jiná funkce
Aj funkcia definovaná „klasicky“ je tiež len premenná a môže jej byť hocikedy priradená iná hodnota.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: