Erkennen Sie die Internetgeschwindigkeit mit JavaScript
Viele Anwendungen erfordern die Fähigkeit, die Internetgeschwindigkeit des Benutzers zu messen. Obwohl es nicht immer genau ist, kann es einen hilfreichen Hinweis auf die Konnektivität des Benutzers liefern.
Ansatz
Die Lösung besteht darin, ein Bild mit einer bekannten Dateigröße zu laden und die zu berechnen Geschwindigkeit basierend auf der zum Laden benötigten Zeit. Dies geschieht durch:
Beispiel
Der folgende Code stellt eine Implementierung dieses Ansatzes bereit:
var imageAddr = "https://example.com/image.png"; var downloadSize = 7300000; //bytes function MeasureConnectionSpeed() { var startTime, endTime; var download = new Image(); download.onload = function () { endTime = (new Date()).getTime(); showResults(); }; download.onerror = function (err, msg) { ShowProgressMessage("Invalid image, or error downloading"); } startTime = (new Date()).getTime(); var cacheBuster = "?nnn=" + startTime; download.src = imageAddr + cacheBuster; function showResults() { var duration = (endTime - startTime) / 1000; //seconds var bitsLoaded = downloadSize * 8; var speedBps = (bitsLoaded / duration).toFixed(2); var speedKbps = (speedBps / 1024).toFixed(2); var speedMbps = (speedKbps / 1024).toFixed(2); ShowProgressMessage("Your connection speed is:"); ShowProgressMessage(speedBps + " bps"); ShowProgressMessage(speedKbps + " kbps"); ShowProgressMessage(speedMbps + " mbps"); } }
Das obige ist der detaillierte Inhalt vonWie kann ich die Internetgeschwindigkeit mit JavaScript messen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!