Rumah >hujung hadapan web >tutorial js >Bolehkah JavaScript Mengukur Kelajuan Internet dengan Tepat, dan Bagaimana?

Bolehkah JavaScript Mengukur Kelajuan Internet dengan Tepat, dan Bagaimana?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-02 12:52:15716semak imbas

Can JavaScript Accurately Measure Internet Speed, and How?

Cara Mengukur Kelajuan Internet dengan JavaScript (Dengan Kaveat)

Mengesan kelajuan internet pengguna dengan JavaScript adalah mungkin sedikit sebanyak, tetapi ia penting untuk mengurus jangkaan mengenai ketepatan. Pendekatannya melibatkan:

  • Pemuatan Imej dengan Saiz Fail Diketahui: Muatkan imej dengan saiz fail yang telah ditetapkan.
  • Pengukuran Berdasarkan Peristiwa: Dalam acara "onload" imej, hitung masa berlalu sejak acara itu berlaku dicetuskan.
  • Pengiraan: Bahagikan masa dengan saiz fail imej untuk menentukan kelajuan sambungan.

Walau bagaimanapun, kaedah ini mempunyai had berikut:

  • Ketidaktepatan yang wujud: Keadaan rangkaian, caching dan faktor lain boleh menjejaskan ketepatan kelajuan yang dikira.
  • Pengesanan Terpilih: Ia hanya mengukur kelajuan khusus untuk fail imej yang sedang dimuat turun, bukan kelajuan rangkaian keseluruhan.

Contoh Pelaksanaan:

Contoh kerja pendekatan yang diterangkan boleh didapati di sini: Kira kelajuan menggunakan JavaScript.

Kes Ujian dengan Pembetulan:

Kod berikut menggabungkan pembetulan untuk menangani beberapa ketidaktepatan:

// ... same setup code as before ...

function showResults() {
    var duration = (endTime - startTime) / 1000;
    var duration2 = (Math.round(duration * 1000) / 1000).toFixed(2); // Round-trip time fix

    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:", 
        speedBps + " bps", 
        speedKbps + " kbps", 
        speedMbps + " Mbps"
    ]);
}

Pembetulan ini termasuk pengiraan tempoh yang lebih tepat dengan membundarkannya kepada dua tempat perpuluhan.

Atas ialah kandungan terperinci Bolehkah JavaScript Mengukur Kelajuan Internet dengan Tepat, dan Bagaimana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn