JS 监听网络状态

我们在开发过程中会遇到监听用户网络状态的需求,通过JS可以获取当前的网络状态,包括下载速度、网络延迟、网络在线状态、网络类型等信息

具体获取如下:

let info = navigator.connection
console.log(info)

在这里插入图片描述

可以看到,包含几个信息:

属性作用
dnwnlink网络下载速度,单位 mb/s
effectiveType网络类型,不准确
rtt网络延迟,单位 ms

我们还可以获取到当前网络的在线状态:

let isOnline = navigator.onLine
console.log(isOnLine)

在这里插入图片描述
能获取到网络信息,那我们怎么监听呢:

// 监听网络在线状态
window.addEventListener("onLine", updateInfo)
// 监听网络离线
window.addEventListener("offLine", updateInfo)
// 监听网络信息变化
navigator.connection.addEventListener('change', updateInfo)

function updateInfo() {
	// 获取网络状态
	let isOnLine = navigator.onLine
	// 获取网络信息
	let info = navigator.connection
}

除了以上监听事件外,还可以轮训监听,1秒获取一次

setInterval(updateInfo, 1000)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端小小白zyw

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值