Pogledajte određenu poruku
Staro 25. 02. 2010.   #10
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

nije sporno da se to sto pise u uslovu svaki put poziva, ali ovde se radi o propertiju, koji se samo procita iz objekta, ne izracunava mu se vrednost svaki put (niz zna koliko je dugacak), pa je zato razlika minimalna...

Evo probajte i sami u firebugu:
Kôd:
var a = [];
var b = [];
var start = new Date();
for(var i=0; i<1000000; i++)
    a.push(i);
var end = new Date();

console.log( (end-start) /1000)

var start = new Date();
for(var i=0; i<a.length; i++)
    b.push(i);
var end = new Date();

console.log( (end-start) /1000)
Dobije se, iz nekoliko pokretanja:

Citat:
const .length
------------------
0.866 1.063
0.862 1.064
0.866 1.067
0.852 1.056
0.866 1.066
znaci jeste malo sporiji pristup propertiju nego varijabli, ali razlika je smesna, ~0.2 mikrosekunde po iteraciji, po meni je to nebitno, i sto je najbitnije ne degradira se povecanjem broja elemenata, nego zavisi od js kompajlera..

Ali zato u php-u nikako ne treba raditi for($i=0; $i<count($nesto); $i++) jer to zaista broji elemente niza svaki put...
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 25. 02. 2010. u 15:59.
ivanhoe je offline   Odgovorite uz citat
"Hvala" ivanhoe za poruku: