嗨害嗨,好久不见,我又来了奥。今天有人问了一个这样的问题,就是如何获取屏幕的分辨率,还有操作系统。因为他做的项目接口需要传的参数中包括这两样。我搜索了并且整理了一下。
获取操作系统的话,bom有一个对象叫navigator,我们打开一个网页,点击F12,然后在控制台输入navigator,回车。我们可以看到一个对象,里面有很多值。如下图
里面有许许多多的属性,我们可以找一找哪些跟操作系统有关。有一个platform:win32,还有一个userAgent,充分利用这两个,话不多说,直接上代码:
function getOperatingSystem() {
try {
//检测当前操作系统
if (/(android|Android|ANDROID)/i.test(navigator.userAgent)) {
//这是Android平台下浏览器
return "Android";
}
if (/(iPhone|iPad|iPod|iOS|iphone|ipad|ipod|ios)/i.test(navigator.userAgent)) {
//这是iOS平台下浏览器
return "ios"
}
if (/win|windows|Win|Windows/i.test(navigator.userAgent)) {
//这是Linux平台下浏览器
return "windows"
}
if (/Linux/i.test(navigator.platform)) {
//这是Linux操作系统平台
return "linux"
}
} catch (e) {
//可以看看e是什么玩意
console.log(e);
//返回未知
return "Unknow";
}
}
正则是网上找的,因为每一项具体的有哪些写法得一个个查出来,这样才严谨。
然后调用这个方法,可以在mounted的时候调用(onload),就知道操作系统啦。
第二个就是屏幕的分辨率问题,有很多条很像的,大家不要搞混了。附一条网页链接,大家可以点进去看看类似的怎么获取
查表可知,我们要用的就是window.screen.height 和window.screen.width了。
好了,就分享到这,下次见