Långsam loop

JavaScript

2 svar · 376 visningar · startad av stattin

Medlem sedan jan. 2005713 inlägg
Trådstart#1

Jag har en konstig fråga, kan man få en loop att arbeta långsammare?

När en loop är för stor så blir ju resulatet oftast att datorn hänger sig eller får arbeta ihjäl sig.

Go jul :birp

Medlem sedan dec. 20025 483 inlägg
#2

Så här kanske:

// Ursprungsvärde på räknaren
var i   = 0,
    // Värdet - 1 den skall räkna till
    lim = 21;

function loop(i){
  if (i >= lim){ return }

  var k = i,
      // 10 anger hur många inkrementeringar som skall göras innan loopen "vilar"
      j = k + 10;

  while (k != j && k != lim){
    // Gör något med k

    ++k;
  }

  window.setTimeout("loop(" + k + ")", 3000);
}

// Anrop: loop(i)

Men det kommer ju att ta ännu längre tid innan den blir klar.

Medlem sedan jan. 2005713 inlägg
#3

Peter du är en hjälte

Ska kolla vidare på det där när jag kommer hem men just nu ser det ju lovande ut måste jag säga.

Tack så länge.. :bire
mvh Jon Stattin

264 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)