如何用js检测用户的浏览器和设备类型

 

export default function JudgmentEnvironment(){
    var userAgentStr = window.navigator.userAgent;
    let string = ''
    let stringtwo = ''
    if(/Mobile/.test(userAgentStr)){
		string='Mobile端';
	}else{
		string='PC端';
	}
	if (/MicroMessenger/.test(userAgentStr)) {
		stringtwo='WeChat(微信)'
	}else if(/AlipayClient/.test(userAgentStr)) {
		stringtwo='Alipay(支付宝)'
	}else if(/QQTheme/.test(userAgentStr)) {
		stringtwo='QQ'
	}else if(/HeyTapBrowser/.test(userAgentStr)) {
		stringtwo='HeyTapBrowser(HeyTap)'
	}else if(/VivoBrowser/.test(userAgentStr)) {
		stringtwo='VivoBrowser(vivo)'
	}else if(/MQQBrowser/.test(userAgentStr)) {
		stringtwo='MQQBrowser(QQ浏览器移动版)'
	}else if(/QQBrowser/.test(userAgentStr)) {
		stringtwo='QQBrowser(QQ浏览器)'
	}else if(/baiduboxapp/.test(userAgentStr)) {
		stringtwo='baiduboxapp(百度app)'
	}else if(/Weibo/.test(userAgentStr)) {
		stringtwo='Weibo(新浪微博)'
	}else if(/iqiyi/.test(userAgentStr)) {
		stringtwo='iqiyi(爱奇艺)'
	}else if(/aweme/.test(userAgentStr)) {
		stringtwo='aweme(抖音)'
	}else if(/kdtUnion_iting/.test(userAgentStr)) {
		stringtwo='kdtUnion_iting(喜马拉雅)'
	}else if(/DingTalk/.test(userAgentStr)) {
		stringtwo='DingTalk(钉钉)'
	}else if(/UCBrowser/.test(userAgentStr)) {
		stringtwo='UCBrowser(UC浏览器)'
	}else if(/SamsungBrowser/.test(userAgentStr)) {
		stringtwo='SamsungBrowser(三星浏览器)'
	}else if(/HUAWEIEVA/.test(userAgentStr)) {
		stringtwo='huaweiBrowser(华为浏览器)'
	}else if(/NokiaBrowser/.test(userAgentStr)) {
		stringtwo='NokiaBrowser(诺基亚浏览器)'
	}else if(/Opera/.test(userAgentStr)) {
		stringtwo='Opera(欧朋)'
	}else if(/Firefox/.test(userAgentStr)) {
		stringtwo='Firefox(火狐)'
	}else if(/Chrome/.test(userAgentStr)) {
		stringtwo='Chrome(谷歌)'
	}else if(/Safari/.test(userAgentStr)) {
		stringtwo='Safari(苹果)'
	}else{
		stringtwo='other'
	}

   return string+stringtwo
}

具体来说,它首先检测用户的设备类型,如果用户是在移动设备上访问网页,就会将 string 设置为 "Mobile端",否则设置为 "PC端"。

接下来,它检测用户所使用的浏览器,并将 stringtwo 设置为相应的浏览器名称。如果用户的浏览器不在已知列表中,将 stringtwo 设置为 "other"。

代码中包含了一系列条件语句,每个条件语句检测一个特定的浏览器或应用程序的标识字符串,例如微信、支付宝、QQ、新浪微博等。如果用户的用户代理字符串(userAgentStr)中包含这些标识字符串之一,将设置相应的 stringtwo 值。

最后,该函数返回一个字符串,其中包含设备类型和浏览器名称的组合,例如 "Mobile端WeChat(微信)" 或 "PC端Chrome(谷歌)",或者 "PC端other"(如果无法识别用户的浏览器或设备类型)。

你可能感兴趣的:(javascript,开发语言,ecmascript)