F2E_4js输出浏览器与操作系统


这两周比较忙,没怎么看书,也就没怎么更新(其实就是懒).

话说上周刚把COD10通关了(…不是比较忙吗?),游戏体验上马马虎虎,剧情略扯淡,一贯的美国先遭殃,然后全球沦陷,然后美国拯救世界外加输出美帝爱国主义加个人英雄主义.

不对啊,怎么快变成COD10通关攻略了,我明明是想说说正则的.话说回来,COD10真tm大啊,30多个G快赶上WOW了…期待COD11…

回到正题,输出浏览器与操作系统.

function bro(e){
	var r=new Array;
	var browser='';
	if(r=e.match(/MSIE\s([^\s|;]+)/gi)){
		browser='Internet Explorer'+' '+r[0].replace('MSIE','').split('.')[0];
	}else if(r=e.match(/FireFox\/([^\s]+)/ig)){
		var r1=r[0].split("/");
		browser='Mozilla FireFox '+' '+r1[1].split('.')[0];
	}else if(r=e.match(/Maxthon([\d]*)\/([^\s]+)/ig)){
		var r1=r[0].split("/");
		browser='Maxthon'+' '+r1[0].split('.')[0];
	}else if(r=e.match(/Chrome([\d]*)\/([^\s]+)/ig)){
		var r1=r[0].split("/");
		browser='Chrome'+' '+r1[1].split('.')[0];
	}else if(r=e.match(/QQBrowser\/([^\s]+)/ig)){
		var r1=r[0].split("/");
		browser='QQBrowser'+' '+r1[1].split('/')[0];
	}else if(r=e.match(/UC/ig)){
		browser='UCWeb';
	}else if(r=e.match(/safari\/([^\s]+)/ig)){
		var r1=r[0].split("/");
		browser='Apple Safari'+' '+r1[1].split('.')[0];
	}else if(r=e.match(/Opera[\s|\/]([^\s]+)/ig)){
		browser='Opera'+' '+r[1].split('.')[0];
	}else{
		browser='Other Browser';
	}
		return browser;
	}

function os(e){
	var os='';
	if(e.match(/win/ig)){
		if(e.match(/nt 5.1/ig)){
			os='Windows XP';
		}else if(e.match(/nt 6.1/ig)){
			os='Windows 7';
		}else if(e.match(/nt 6.2/ig)){
			if(e.match(/arm/ig)){
				if(e.match(/wp/ig)){
					os='Windows Phone';
				}else{
					os='Windows RT';
				}
				}else{
					os='Windows 8';
				}
		}else if(e.match(/nt 6.0/ig)){
			os='Windows Vista';
		}else if(e.match(/nt 6.0/ig)){
			os='Windows Vista';
		}else if(e.match(/nt 5/ig)){
			os='Windows 2000';
		}else{
			os='Windows';
		}
	}else if(e.match(/android/ig)){
		os='Android';
	}else if(e.match(/ubuntu/ig)){
		os='Ubuntu';
	}else if(e.match(/linux/ig)){
		os='Linux';
	}else if(e.match(/mac/ig)){
		os='Mac OS X';
	}else if(e.match(/unix/ig)){
		os='Unix';
	}else if(e.match(/nokia/ig)){
		if(e.match(/win/ig)){
			os='Nokia Lumia';
		}else{
			os='Nokia SymbianOS';
		}
	}else{
		os='Unknown OS';
	}
	return os
}

其实就是正则匹配,然后很脑残的if else.也许你会说这有个毛用?

真没啥用,只是受到启发我把它加到多说评论插件里面,然后效果就像这样:

其实还是没多大用,不过看起来很cooooool不是么,据说黑客们几乎个个都是玩弄正则和字符串的高手,有空再好好看看正则吧.然后可以写个lib嘛,说不定什么时候能用上.写到现在我才发现好像跟前端又没啥关系…算了随便吧,只要是干货就行2333333333