在JavaScript中,navigator对象用于获取浏览器的相关信息。它提供了一系列属性和方法,可以帮助我们了解浏览器的品牌、版本、用户代理等信息。
使用navigator.userAgent可判断当前是安卓或者ios或者H5或者web(设备系统):
const?isAndroid?=?navigator.userAgent.toLowerCase().includes('android');
if?(isAndroid)?{
??console.log('当前是安卓设备');
}
const?isiOS?=?/(iPhone|iPad|iPod)/.test(navigator.userAgent);
if?(isiOS)?{
??console.log('当前是iOS设备');
}
const?isMobile?=?/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera?Mini/i.test(navigator.userAgent);
if?(isMobile)?{
??console.log('当前是移动端浏览器(H5)');
}
const?isDesktop?=?!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera?Mini/i.test(navigator.userAgent));
if?(isDesktop)?{
??console.log('当前是桌面浏览器(Web)');
}
判断当前操作系统
const?platform?=?navigator.platform.toLowerCase();
if?(platform.includes('win'))?{
??console.log('当前运行在?Windows?操作系统');
}?else?if?(platform.includes('mac'))?{
??console.log('当前运行在?macOS?操作系统');
}?else?if?(platform.includes('linux'))?{
??console.log('当前运行在?Linux?操作系统');
}?else?if?(platform.includes('android'))?{
??console.log('当前运行在?Android?操作系统');
}?else?if?(platform.includes('iphone')?||?platform.includes('ipad')?||?platform.includes('ipod'))?{
??console.log('当前运行在?iOS?操作系统');
}?else?{
??console.log('未知操作系统');
}
依据不同的场景需求,可采用userAgent或platform,navigator中其他内容也很丰富,能够解决很多问题,值得学习一下!