NA VRH
DOMOV HTML CSS JavaScript jQuery AngularJS PHP MySQL Python C# Sass WordPress
glave/headings

JavaScript JavaScript načini Sintaksa Spremenljivke Števila Objekti Funkcije Pogoji Zanke - zanka for() - zanka for of() - zanka for in() - zanka while() - zanka do while() Nizi Datum in čas DOM Array AJAX Knjižnica

Zanke

Zanke lahko večkrat izvedejo nek blok kode, in so ravno, zato zelo priročne. Predvsem, če želimo zagnati isto kodo večkrat z drugačno vrednostjo, kot na primer naključna števila.

Zanka for() je preprosto enaka kot while zanka, samo drugače predstavljena, napisana na drugačen način. Definira se z for(), v oklepajih se definira pogoj, in korak za koliko se vrednost poveča. Spremenljivke ločujem s ;. V for() zanki ne potrebujemo pogojev pisati ločeno, ampak jih enostavno lahko vpišemo v oklepaje.

    <p id="primer1"></p>

    <script>
        var avtomobili = ["Fiat", "Renault", "Saab", "Audi", "BMW", "Zastava"];
        var i, len, text;
        for (i = 0, len = avtomobili.length, text = ""; i < len; i++) {
            text += avtomobili[i] + "<br>";
        }

        document.getElementById("primer1").innerHTML = text;
        document.getElementById("primer1").style.backgroundColor = "black"
        document.getElementById("primer1").style.color = "white"
        document.getElementById("primer1").style.border = "1px solid white"
        document.getElementById("primer1").style.borderRadius = "6px"
        document.getElementById("primer1").style.padding = "10px"
    </script>

    <p id="primer2"></p>
    <script>
        var oseba = [{name:"Peter", last:"Klepec", age: "neznano"},
            {name: "Janez", last: "Kranjski", age: "neznano"},
            {name: "Borut", last: "Bukovnik", age: 46}];

        var doc = "";
        var a;
        for (a in oseba) {
            doc += "Njegovo ime je " + oseba[a].name + ", priimek " + oseba[a].last + "," + " " +
            "in ima " + oseba[a].age + " let!" + "<br>";
        }
        document.getElementById("primer2").innerHTML = doc;
        document.getElementById("primer2").style.backgroundColor = "red"
        document.getElementById("primer2").style.color = "yellow"
        document.getElementById("primer2").style.border = "1px solid black"
        document.getElementById("primer2").style.borderRadius = "6px"
        document.getElementById("primer2").style.padding = "10px"
    </script>
            

Če stavek vrne true se bo zanka začela znova, v nasprotnem primeru, če zanka vrne false se bo zanka končala. V primeru, da drugo izjavo spustimo, moramo zagotoviti prelom znotraj zanke, ker se v nasprotnem primeru, zanka nikoli ne konča. Če to prenesemo na splet, bo to zrušilo brskalnik.

    <p id="primer"></p>

    <script>
        var loop = "";
        for (var count = 0; count <= 10; count++) {
            loop += "Trenutni števec: " + count + "<br>";
        }
        document.getElementById("primer").innerHTML = loop;
        document.getElementById("primer").style.backgroundColor = "black"
        document.getElementById("primer").style.color = "white"
        document.getElementById("primer").style.border = "1px solid white"
        document.getElementById("primer").style.borderRadius = "6px"
        document.getElementById("primer").style.padding = "10px"
    </script>
            

Zanka pogosto poveča vrednost začetne spremenljivke, kar pa ni nujno. Zanka lahko naredi tudi negativen izraz i--, ali pozitiven i = i + 15, ali kaj drugega. Zanka ni obvezna, pomeni, da jo lahko izpustimo, če recimo, povečamo vrednosti.

    <p id="primer"></p>

    <script>
        var avto = ["Fiat", "Renault", "Saab", "Audi", "BMW", "Zastava"];

        var i = 0;
        var len = avto.length;
        var text = "";

        for (; i < len; ) {
            text += avto[i] + "<br>";
            i++;
        }

        document.getElementById("primer").innerHTML = text;
        document.getElementById("primer").style.backgroundColor = "black"
        document.getElementById("primer").style.color = "white"
        document.getElementById("primer").style.border = "1px solid white"
        document.getElementById("primer").style.borderRadius = "6px"
        document.getElementById("primer").style.padding = "10px"
    </script>
            

Lahko preusmeri stavek skozi vrednosti ponovljivih objektov (predmetov). Ta izjava je namenjena, da "skače" skozi zanke podatkovnih struktur, ki so nadomestljive, na primer array, nizi, mape itn.

    <script>
        var avti = ["Fičo", "101", "Clio", "Zetor"];
        var a

        for (a of avti) {
            document.write(a + "<br>")
        }
    </script>

    <p>Lahko tudi napišemo tako:</p>
    <p id="example"></p>
    <script>
        var cars = ["Fičo", "101", "Clio", "Zetor"];
        var b

        for (b of cars) {
            document.write("<p id='example'>" + b + "</p>")
        }
    </script>
            

Pod spremenljivko avto imamo vpisane tri različne vrednosti. Uporabimo zanko for() da dobimo izpis, ki smo ga določil v doc. Lahko vpišemo več modelov vse, kar storimo je, da dodamo vejico. Napisali bomo primer za dva avta, če potrebujemo samo enega, izbrišemo drugo vrstico {ime:"Fiat", model:"Punto", letnik:"2020", ampak oglati oklepaj na koncu vrstice pustimo. Kot tudi podpičje.

    <p id="primer"></p>

    <script>
        var avto = [{ime:"Renault", model:"Campus", letnik:"1946"}, {ime:"Fiat", model:"Punto", letnik:"2020"}];
        var doc = "";

        for (var index in avto) {
            doc += "Vozim " + avto[index].ime + ", model " + avto[index].model + ", letnik " + avto[index].letnik + "<br>";
        }
        document.getElementById("primer").innerHTML = doc;
        document.getElementById("primer").style.border = "1px solid black"
        document.getElementById("primer").style.borderRadius = "6px"
        document.getElementById("primer").style.padding = "10px"
    </script>
            

Zanka while() ustvarja zanko, ki se izvaja, če je določen pogoj resničen. Zanka bo delovala še naprej, dokler je pogoj resničen, ustavila se bo šele, ko bo stanje napačno. JavaScript začne šteti od nič (0) naprej, torej če bomo hoteli šteti do deset (10), bo JavaScript štel od nič (0) naprej, kar pomeni do 9.

    <p id="primer"></p>

    <script>
        var loop = "";
        for (var count = 0; count <= 10; count++) {
            loop += "Trenutni števec: " + count + "<br>";
        }
        document.getElementById("primer").innerHTML = loop;
        document.getElementById("primer").style.backgroundColor = "greenyellow"
        document.getElementById("primer").style.border = "1px solid green"
        document.getElementById("primer").style.borderRadius = "6px"
        document.getElementById("primer").style.padding = "10px"
    </script>
            

Razlika med while() in do while() je, da preveri pogoj na koncu.

    <p id="primer"></p>

    <script>
        var count = 0;
        var loop = "";
        do {
            loop += "Trenutni števec: " + count + "<br>";
            count++;
        }
        while (count < 10);
        document.getElementById("primer").innerHTML = loop;
        document.getElementById("primer").style.backgroundColor = "orange"
        document.getElementById("primer").style.border = "1px solid orangered"
        document.getElementById("primer").style.borderRadius = "6px"
        document.getElementById("primer").style.padding = "10px"
    </script>