The Navigator object (named after the Netscape web browser, of course) has variables that specify the name and version of the browser that is running, as well as variables that identify the platform on which it is running. These variables allow scripts to customize their behavior based on browser or platform, so that they can take advantage of extra capabilities supported by some versions or work around bugs that exist on some platforms.
userAgent
The string that the browser sends in its USER-AGENT HTTP header.This property typically contains all the information in both appName and appVersion.
eg.
this.isIE = navigator.userAgent.toLowerCase().indexOf("msie") >= 0;