Verbindingssnelheid detecteren met JavaScript

Voeg beginnende en eindigende scripttags toe in het kopgedeelte van de webpagina (na de starttag maar vóór de eindtag), bijvoorbeeld:

Voeg de volgende code toe tussen de beginnende en eindigende scripttags, waarbij u "mijnafbeelding.jpg" vervangt door de bestandsnaam van de afbeelding die u voor de snelheidstest wilt gebruiken. Het "?n=" + Math.random() deel van het adres dat is gebouwd en toegewezen aan imageAddr, bedriegt de webbrowser om de afbeelding elke keer op te halen in plaats van een lokaal gecachte versie te gebruiken. Gebruik een afbeelding met een bestandsgrootte van ongeveer 200 kilobytes.

Voeg de volgende code toe op de volgende regel van het script om de variabelen te maken om de starttijd, eindtijd en downloadgrootte van de test op te slaan. Stel "downloadSize" in op de grootte van het afbeeldingsbestand in bytes.

Voeg de volgende code toe om de afbeelding in te stellen die voor de test wordt gedownload. "download" is ingesteld als een afbeeldingsobject. De actie om het einde van de download vast te leggen, wordt toegewezen om te activeren wanneer het downloaden van de afbeelding is voltooid.

Voeg de volgende functie toe aan het script dat de resultaten van de snelheidstest berekent. Ten eerste berekent het de duur en converteert het milliseconden naar seconden. Vervolgens converteert het de downloadgrootte naar bits, berekent het de downloadsnelheid en converteert het de snelheid naar kbps en Mbps. Ten slotte verschijnt er een berichtvenster met de resultaten.

functie showResults () { var duration = Math.round ((endTime - startTime) / 1000); var bitsLoaded = downloadSize * 8 GO var speedBps = Math.round (bitsLoaded / duur) GO var speedKbps = (speedBps / 1024).toFixed (2) GO var speedMbps = (speedKbps / 1024).toFixed (2) GO alert ("Uw verbindingssnelheid is: \n" + speedBps + " bps\n" + speedKbps + " kbps\n" + speedMbps + " Mbps\n") GA }

Open de pagina in uw browser en test deze om te controleren of het script correct werkt. Het kan enkele seconden duren voordat het berichtvenster verschijnt met de testresultaten.

Tip

Het JavaScript meet de snelheid tussen de computer die de webpagina bekijkt en de site die de afbeelding host die voor de test is gebruikt. Als u de verbinding met uw eigen website test, host dan de afbeelding op uw eigen website. Test de algemene verbindingssnelheid door het adres te verstrekken van een afbeelding die wordt gehost op een site met veel bandbreedte en snelheid, zoals flickr of Amazon.