通過js獲取瀏覽器信息
華為個別型號的手機,瀏覽器沒有返回android || huawei這些標識
```
const u: any = navigator.userAgent;
export const windows: any = window;
export const Weixin: boolean = u.indexOf('MicroMessenger') > -1; // 是否微信內置瀏覽器
export const Weibo: boolean = u.indexOf('Weibo') > -1; // 是否Weibo內置瀏覽器
export const Ios: boolean = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); // ios 系統
export const Android: boolean = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; // 安卓 系統
export const Mobile: boolean = !!u.match(/AppleWebKit.*Mobile.*/); // 是否為移動終端
export const Qq: boolean = u.indexOf('QQ') > -1 && (u.indexOf('V1_IPH_SQ') > -1 || u.indexOf('V1_AND_SQ') > -1); // 是否QQ內置瀏覽器
export const Huawei: boolean = u.toLowerCase().indexOf('huawei') > -1; // 是否為華為瀏覽器
export const Huawei_LLD: boolean = u.toLowerCase().indexOf('lld-al00') > -1; // 是否為華為瀏覽器
export const Oppo: boolean = u.toLowerCase().indexOf('oppo') > -1;// 是否為Oppo瀏覽器
export const Xiaomi: boolean = u.toLowerCase().indexOf('xiaomi') > -1;// 是否為小米瀏覽器
export const IosVersion: number = getIosVersion(); // iso當前系統版本
export const AndroidVersion: number = getAndroidVersion(); // 安卓當前系統版本
export const Window: boolean = u.toLowerCase().indexOf('windows; u; windows nt') > -1;
function getIosVersion(): number {
const iosVersion: any = navigator.appVersion.toLowerCase().match(/iphone os (.*) like mac os/i);
if (iosVersion && iosVersion[1]) {
const v: number[] = iosVersion[1].split("_");
return v[0];
}
return 0;
}
function getAndroidVersion(): number {
const iosVersion: any = navigator.appVersion.toLowerCase().match(/android(.*);/i);
if (iosVersion && iosVersion[1]) {
const version: any = iosVersion[1].split(";");
const v: number[] = version[0].split(".");
return v[0];
}
return 0;
}
```