我们部署在一些云平台或者web服务器上的前端应用可以通过PC浏览器或者手机浏览器访问使用权。在前端应用中,有时我们需要根据不同的运行环境做相应的处理。例如,在下面的逻辑中,如果判断应用当前运行在手机上,则需要设置相应的viewport。如果(this.isMobile()){varviewport=document.querySelector("meta[name=viewport]");if(viewport){viewport.setAttribute('content','width='+window.innerWidth+',height='+window.innerHeight+',maximum-scale=1.25,minimum-scale=1.25');那么如何实现isMobile函数呢?我们打开Chrome开发者工具,在控制台选项卡中输入navigator,回车,我们会发现这个对象包含了很多有用的信息。有一个字段platform:如果我在安装了Windows系统的电脑上使用Chrome,则值为Win32。另一个重要的字段是userAgent:Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/67.0.3396.99Safari/537.36以下不到100行的JavaScript代码使用正则表达式处理navigator对象中的platform和userAgent字段判断前端应用当前运行环境,支持Windows/Linux/Macintosh三种操作系统,iOS/Android/BlackBerry/WindowsPhone等移动平台。代码如下所示。你也可以在我的github上找到这段代码。执行后会弹出检测到的运行环境和版本号。https://github.com/i042416/Kn...获取更多Jerry的原创技术文章,请关注公众号“汪子熙”或扫描下方二维码:
