Skip to content

Instantly share code, notes, and snippets.

@rlr
Created July 29, 2010 20:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rlr/499194 to your computer and use it in GitHub Desktop.
Save rlr/499194 to your computer and use it in GitHub Desktop.
getOS()
function getOS() {
var os = [
['Windows 3.11', /Win16/i],
['Windows 95', /(Windows 95)|(Win95)|(Windows_95)/i],
['Windows 98', /(Windows 98)|(Win98)/i],
['Windows 2000', /(Windows NT 5.0)|(Windows 2000)/i],
['Windows XP', /(Windows NT 5.1)|(Windows XP)/i],
['Windows Server 2003', /(Windows NT 5.2)/i],
['Windows Vista', /(Windows NT 6.0)/i],
['Windows 7', /(Windows NT 6.1)/i],
['Windows NT 4.0', /(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)/i],
['Windows ME', /Windows ME/i],
['Windows', /Windows/i],
['Open BSD', /OpenBSD/i],
['Sun OS', /SunOS/i],
['Linux', /(Linux)|(X11)/i],
['Mac OS X Tiger', /(Mac OS X 10.4)/i],
['Mac OS X Leopard', /(Mac OS X 10.5)/i],
['Mac OS X Snow Leopard', /(Mac OS X 10.6)/i],
['Mac OS', /(Mac_PowerPC)|(Macintosh)/i],
['QNX', /QNX/i],
['BeOS', /BeOS/i],
['OS/2', /OS\/2/i],
],
ua = navigator.userAgent;
for (var i=0, l=os.length; i<l; i++) {
if (os[i][1].test(ua)) {
return os[i][0];
}
}
return navigator.oscpu || '';
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment