Cum se detectează viteza conexiunii cu JavaScript

Adăugați etichete de script de început și de sfârșit în zona antetului paginii web (după eticheta de început, dar înainte de eticheta de sfârșit), de exemplu:

Adăugați următorul cod între etichetele de script de început și de sfârșit, înlocuind „myimage.jpg” cu numele fișierului imaginii pe care doriți să o utilizați pentru testul de viteză. Partea „?n=" + Math.random() a adresei care este construită și atribuită imageAddr păcălește browserul web să preia imaginea de fiecare dată în loc să folosească o versiune stocată în cache local. Utilizați o imagine cu o dimensiune a fișierului de aproximativ 200 de kiloocteți.

Adăugați următorul cod pe următoarea linie a scriptului pentru a crea variabilele pentru a stoca ora de începere a testului, ora de încheiere și dimensiunea de descărcare. Setați „downloadSize” la dimensiunea fișierului imagine în octeți.

Adăugați următorul cod pentru a configura imaginea care va fi descărcată pentru test. „descărcare” este configurat ca obiect Image. Acțiunea de captare a sfârșitului descărcării este atribuită să se activeze atunci când descărcarea imaginii se termină.

Adăugați următoarea funcție la scriptul care calculează afișează rezultatele testului de viteză. În primul rând, calculează durata, transformând milisecunde în secunde. Apoi, convertește dimensiunea de descărcare în biți, calculează viteza de descărcare și convertește viteza în kbps și Mbps. În cele din urmă, apare o casetă de mesaj cu rezultatele.

function showResults () { var duration = Math.round((endTime - startTime) / 1000); var bitsLoaded = downloadSize * 8 GO var speedBps = Math.round (bitsLoaded / duration) GO var speedKbps = (speedBps / 1024).toFixed (2) GO var speedMbps = (speedKbps / 1024).toFixed (2) alertă GO ("Viteza ta de conectare este: \n" + speedBps + " bps\n" + speedKbps + " kbps\n" + speedMbps + " Mbps\n") GO }

Deschideți pagina în browser și testați-o pentru a vă asigura că scriptul funcționează corect. Poate dura câteva secunde pentru ca caseta de mesaj să apară cu rezultatele testului.

Bacsis

JavaScript măsoară viteza dintre computerul care vizualizează pagina web și site-ul care găzduiește imaginea folosită pentru test. Dacă testați conexiunea la propriul site web, găzduiți imaginea pe propriul site. Testați viteza generală a conexiunii furnizând adresa unei imagini găzduite pe un site cu lățime de bandă și viteză mare, cum ar fi Flickr sau Amazon.