Recently, Chromium improved their implementation of
navigator.connection
by adding three new attributes:effectiveType
,downlink
andrtt
.Before that, the available attributes were
downLinkMax
andtype
. With these two attributes you couldn’t really tell if the connection was fast or slow. Thenavigator.connection.type
may tell us a user is using WiFi, but this doesn’t say anything about the real connection speed, as they may be using a hot spot and the connection is in fact 2G.With the addition of effectiveType we are finally able to get the real connection type. There are four different types (slow-2g, 2g, 3g and 4g) and they are described this way by the Web Incubator Community Group:
slow-2g: The network is suited for small transfers only such as text-only pages.
2g: The network is suited for transfers of small images.
3g: The network is suited for transfers of large assets such as high resolution images, audio, and SD video.
4g: The network is suited for HD video, real-time video, etc.Let’s see how we can improve user experience by delivering images based on available connection speed.