Simple JavaScript code snippet that uses the `navigator.connection` API to check the network speed of a user's device. Please note that this API might not be supported in all browsers and may not always provide precise results, but it can give a rough estimation of the network speed.
```javascript
function checkNetworkSpeed() {
if (navigator.connection && navigator.connection.effectiveType) {
// Get the effective connection type
let connectionType = navigator.connection.effectiveType;
// Get the estimated round-trip time in milliseconds
let rtt = navigator.connection.rtt;
// Get the estimated downlink speed in megabits per second
let downlinkSpeed = navigator.connection.downlink;
// Output the results
console.log("Effective connection type: " + connectionType);
console.log("Round-trip time: " + rtt + " milliseconds");
console.log("Downlink speed: " + downlinkSpeed + " Mbps");
} else {
console.log("Network information API not supported.");
}
}
// Call the function to check network speed
checkNetworkSpeed();
```
This code checks if the `navigator.connection` API is available in the user's browser. If supported, it retrieves the effective connection type, round-trip time (RTT), and downlink speed. Then, it logs these values to the console. If the API is not supported, it logs a message indicating that the network information API is not supported.